亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? treeicondemo2.java

?? java tutotrials or beginners
?? JAVA
字號:
/* * Copyright (c) 1995 - 2008 Sun Microsystems, Inc.  All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * *   - Redistributions of source code must retain the above copyright *     notice, this list of conditions and the following disclaimer. * *   - Redistributions in binary form must reproduce the above copyright *     notice, this list of conditions and the following disclaimer in the *     documentation and/or other materials provided with the distribution. * *   - Neither the name of Sun Microsystems nor the names of its *     contributors may be used to endorse or promote products derived *     from this software without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS * IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ package components;/** * A 1.4 application that requires the following additional files: *   TreeDemoHelp.html *    arnold.html *    bloch.html *    chan.html *    jls.html *    swingtutorial.html *    tutorial.html *    tutorialcont.html *    vm.html */import javax.swing.JEditorPane;import javax.swing.JFrame;import javax.swing.JPanel;import javax.swing.JScrollPane;import javax.swing.JSplitPane;import javax.swing.JTree;import javax.swing.tree.DefaultMutableTreeNode;import javax.swing.tree.TreeSelectionModel;import javax.swing.event.TreeSelectionEvent;import javax.swing.event.TreeSelectionListener;import javax.swing.tree.DefaultTreeCellRenderer;import javax.swing.ToolTipManager;import javax.swing.ImageIcon;import javax.swing.Icon;import java.net.URL;import java.io.IOException;import java.awt.Dimension;import java.awt.GridLayout;import java.awt.Component;public class TreeIconDemo2 extends JPanel                            implements TreeSelectionListener {    private JEditorPane htmlPane;    private JTree tree;    private URL helpURL;    private static boolean DEBUG = false;    public TreeIconDemo2() {        super(new GridLayout(1,0));        //Create the nodes.        DefaultMutableTreeNode top =            new DefaultMutableTreeNode("The Java Series");        createNodes(top);        //Create a tree that allows one selection at a time.        tree = new JTree(top);        tree.getSelectionModel().setSelectionMode                (TreeSelectionModel.SINGLE_TREE_SELECTION);        //Enable tool tips.        ToolTipManager.sharedInstance().registerComponent(tree);        //Set the icon for leaf nodes.        ImageIcon tutorialIcon = createImageIcon("images/middle.gif");        if (tutorialIcon != null) {            tree.setCellRenderer(new MyRenderer(tutorialIcon));        } else {            System.err.println("Tutorial icon missing; using default.");        }        //Listen for when the selection changes.        tree.addTreeSelectionListener(this);        //Create the scroll pane and add the tree to it.         JScrollPane treeView = new JScrollPane(tree);        //Create the HTML viewing pane.        htmlPane = new JEditorPane();        htmlPane.setEditable(false);        initHelp();        JScrollPane htmlView = new JScrollPane(htmlPane);        //Add the scroll panes to a split pane.        JSplitPane splitPane = new JSplitPane(JSplitPane.VERTICAL_SPLIT);        splitPane.setTopComponent(treeView);        splitPane.setBottomComponent(htmlView);        Dimension minimumSize = new Dimension(100, 50);        htmlView.setMinimumSize(minimumSize);        treeView.setMinimumSize(minimumSize);        splitPane.setDividerLocation(100); //XXX: ignored in some releases                                           //of Swing. bug 4101306        //workaround for bug 4101306:        //treeView.setPreferredSize(new Dimension(100, 100));         splitPane.setPreferredSize(new Dimension(500, 300));        //Add the split pane to this panel.        add(splitPane);    }    /** Required by TreeSelectionListener interface. */    public void valueChanged(TreeSelectionEvent e) {        DefaultMutableTreeNode node = (DefaultMutableTreeNode)                           tree.getLastSelectedPathComponent();        if (node == null) return;        Object nodeInfo = node.getUserObject();        if (node.isLeaf()) {            BookInfo book = (BookInfo)nodeInfo;            displayURL(book.bookURL);            if (DEBUG) {                System.out.print(book.bookURL + ":  \n    ");            }        } else {            displayURL(helpURL);         }        if (DEBUG) {            System.out.println(nodeInfo.toString());        }    }    private class BookInfo {        public String bookName;        public URL bookURL;        public BookInfo(String book, String filename) {            bookName = book;            bookURL = TreeIconDemo.class.getResource(filename);            if (bookURL == null) {                System.err.println("Couldn't find file: "                                   + filename);            }        }        public String toString() {            return bookName;        }    }    private void initHelp() {        String s = "TreeDemoHelp.html";        helpURL = TreeIconDemo.class.getResource(s);        if (helpURL == null) {            System.err.println("Couldn't open help file: " + s);        } else if (DEBUG) {            System.out.println("Help URL is " + helpURL);        }        displayURL(helpURL);    }    private void displayURL(URL url) {        try {            if (url != null) {                htmlPane.setPage(url);            } else { //null url		htmlPane.setText("File Not Found");                if (DEBUG) {                    System.out.println("Attempted to display a null URL.");                }            }        } catch (IOException e) {            System.err.println("Attempted to read a bad URL: " + url);        }    }    private void createNodes(DefaultMutableTreeNode top) {        DefaultMutableTreeNode category = null;        DefaultMutableTreeNode book = null;        category = new DefaultMutableTreeNode("Books for Java Programmers");        top.add(category);        //original Tutorial        book = new DefaultMutableTreeNode(new BookInfo            ("The Java Tutorial: A Short Course on the Basics",            "tutorial.html"));        category.add(book);        //Tutorial Continued        book = new DefaultMutableTreeNode(new BookInfo            ("The Java Tutorial Continued: The Rest of the JDK",            "tutorialcont.html"));        category.add(book);        //JFC Swing Tutorial        book = new DefaultMutableTreeNode(new BookInfo            ("The JFC Swing Tutorial: A Guide to Constructing GUIs",            "swingtutorial.html"));        category.add(book);        //Bloch        book = new DefaultMutableTreeNode(new BookInfo            ("Effective Java Programming Language Guide",	     "bloch.html"));        category.add(book);        //Arnold/Gosling        book = new DefaultMutableTreeNode(new BookInfo            ("The Java Programming Language", "arnold.html"));        category.add(book);        //Chan        book = new DefaultMutableTreeNode(new BookInfo            ("The Java Developers Almanac",             "chan.html"));        category.add(book);        category = new DefaultMutableTreeNode("Books for Java Implementers");        top.add(category);        //VM        book = new DefaultMutableTreeNode(new BookInfo            ("The Java Virtual Machine Specification",             "vm.html"));        category.add(book);        //Language Spec        book = new DefaultMutableTreeNode(new BookInfo            ("The Java Language Specification",             "jls.html"));        category.add(book);    }    /** Returns an ImageIcon, or null if the path was invalid. */    protected static ImageIcon createImageIcon(String path) {        java.net.URL imgURL = TreeIconDemo2.class.getResource(path);        if (imgURL != null) {            return new ImageIcon(imgURL);        } else {            System.err.println("Couldn't find file: " + path);            return null;        }    }    /**     * Create the GUI and show it.  For thread safety,     * this method should be invoked from the     * event-dispatching thread.     */    private static void createAndShowGUI() {        //Create and set up the window.        JFrame frame = new JFrame("TreeIconDemo2");        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);        //Create and set up the content pane.        TreeIconDemo2 newContentPane = new TreeIconDemo2();        newContentPane.setOpaque(true); //content panes must be opaque        frame.setContentPane(newContentPane);        //Display the window.        frame.pack();        frame.setVisible(true);    }    public static void main(String[] args) {        //Schedule a job for the event-dispatching thread:        //creating and showing this application's GUI.        javax.swing.SwingUtilities.invokeLater(new Runnable() {            public void run() {                createAndShowGUI();            }        });    }    private class MyRenderer extends DefaultTreeCellRenderer {        Icon tutorialIcon;        public MyRenderer(Icon icon) {            tutorialIcon = icon;        }        public Component getTreeCellRendererComponent(                            JTree tree,                            Object value,                            boolean sel,                            boolean expanded,                            boolean leaf,                            int row,                            boolean hasFocus) {            super.getTreeCellRendererComponent(                            tree, value, sel,                            expanded, leaf, row,                            hasFocus);            if (leaf && isTutorialBook(value)) {                setIcon(tutorialIcon);                setToolTipText("This book is in the Tutorial series.");            } else {                setToolTipText(null); //no tool tip            }            return this;        }        protected boolean isTutorialBook(Object value) {            DefaultMutableTreeNode node =                    (DefaultMutableTreeNode)value;            BookInfo nodeInfo =                     (BookInfo)(node.getUserObject());            String title = nodeInfo.bookName;            if (title.indexOf("Tutorial") >= 0) {                return true;            }             return false;        }    }}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日本一区二区三区久久久久久久久不| 99免费精品在线观看| 欧美一区二区视频观看视频| 日本va欧美va瓶| 中文字幕乱码久久午夜不卡 | 国产黄色精品视频| 国产精品色眯眯| 国产91在线|亚洲| wwwwxxxxx欧美| 国产美女一区二区| 午夜精品福利一区二区三区av| 欧美成人精品高清在线播放| 欧美综合天天夜夜久久| 国产精品1区2区| 久久精品国内一区二区三区| 一区二区三区高清| 久久嫩草精品久久久精品一| 制服丝袜在线91| 国产在线麻豆精品观看| 欧美一区二区三区免费在线看| 亚洲一区二区欧美| 色噜噜偷拍精品综合在线| 久久成人18免费观看| 九九**精品视频免费播放| 天天操天天综合网| 亚洲综合丁香婷婷六月香| 亚洲图片另类小说| 亚洲色图第一区| 亚洲一区二区视频| 一区二区三区四区蜜桃| 亚洲素人一区二区| 国产精品不卡在线| 日韩美女啊v在线免费观看| 亚洲国产精品成人综合| 国产日韩v精品一区二区| 欧美激情一区二区在线| 5858s免费视频成人| 欧美一区二区久久| 国产69精品久久久久毛片| 日韩电影在线免费看| 亚洲制服丝袜av| 亚洲综合一区二区三区| 日韩毛片视频在线看| 亚洲精品在线三区| 久久久亚洲午夜电影| 国产欧美日韩三级| 中文字幕日韩av资源站| 亚洲丰满少妇videoshd| 日韩精品亚洲一区二区三区免费| 麻豆国产精品视频| 国产在线精品一区在线观看麻豆| 久久99国产精品尤物| 国产原创一区二区| 成人av电影在线网| 欧美在线视频日韩| 欧美一级专区免费大片| 久久蜜臀中文字幕| 亚洲精品你懂的| 精品亚洲成a人在线观看| 国产另类ts人妖一区二区| 91麻豆国产福利精品| 欧美视频一区在线| 欧美成人官网二区| 国产精品色噜噜| 亚洲国产精品成人综合| 亚洲国产成人porn| 国产一区二区三区久久久 | 日本韩国欧美一区| 在线视频你懂得一区二区三区| 欧美日韩国产一二三| 欧美一级黄色大片| 国产日本一区二区| 肉肉av福利一精品导航| 国产精品一区二区果冻传媒| 一本色道久久综合狠狠躁的推荐| 欧美午夜精品久久久| 2023国产精品自拍| 一区二区三区在线视频观看| 久久精品国产亚洲a| 欧美日韩一区二区三区在线| 久久一留热品黄| 日本亚洲欧美天堂免费| 99免费精品视频| 久久久久国产成人精品亚洲午夜| 亚洲欧美日韩国产中文在线| 国产一区二区三区| 日韩一区二区免费高清| 亚洲欧美日韩国产另类专区| 久久爱另类一区二区小说| 在线一区二区观看| 国产精品国产精品国产专区不蜜 | 国产亚洲婷婷免费| 视频一区二区三区中文字幕| 97久久精品人人爽人人爽蜜臀 | 亚洲一本大道在线| 日本丰满少妇一区二区三区| 欧美国产精品一区| 国产aⅴ精品一区二区三区色成熟| 欧美自拍偷拍一区| 亚洲老妇xxxxxx| 不卡在线视频中文字幕| 亚洲精品一区二区三区蜜桃下载| 香港成人在线视频| 欧美性大战久久| 一区av在线播放| 欧美日韩国产在线播放网站| 亚洲高清免费一级二级三级| 91麻豆精品在线观看| 亚洲欧洲精品一区二区三区| 成人少妇影院yyyy| 亚洲欧美综合在线精品| 成人aaaa免费全部观看| 亚洲青青青在线视频| 成人精品国产一区二区4080| 欧美激情一区三区| 91在线观看免费视频| 亚洲精品中文在线影院| 色婷婷精品大在线视频| 一区二区欧美在线观看| 制服丝袜亚洲网站| 国模娜娜一区二区三区| 日本一区二区免费在线观看视频 | 精品日韩成人av| 国产精选一区二区三区| 国产精品国产三级国产aⅴ原创| 99国产精品国产精品毛片| 亚洲精品自拍动漫在线| 欧美日免费三级在线| 午夜视频久久久久久| 日韩写真欧美这视频| 国产在线国偷精品免费看| 亚洲欧美综合网| 欧美日韩免费视频| 蜜臂av日日欢夜夜爽一区| 国产视频一区在线播放| 成人v精品蜜桃久久一区| 国产精品久久久久桃色tv| 色婷婷av一区二区三区gif| 偷拍日韩校园综合在线| 精品美女一区二区| 91麻豆福利精品推荐| 麻豆freexxxx性91精品| 中文字幕的久久| 制服丝袜亚洲播放| 91一区二区在线观看| 三级亚洲高清视频| 亚洲欧美一区二区三区极速播放 | 在线亚洲一区二区| 经典三级视频一区| 亚洲精品视频一区| 精品日韩欧美一区二区| 色哟哟精品一区| 国内成人免费视频| 天堂av在线一区| 成人欧美一区二区三区在线播放| 欧美日韩极品在线观看一区| 国产一区二区三区av电影| 亚洲一区二区欧美| 日本一二三不卡| 精品美女一区二区三区| 欧美日韩精品一区二区| 91麻豆精东视频| 丰满放荡岳乱妇91ww| 国产一区中文字幕| 日本欧美在线观看| 国产精品美女久久久久久久网站| 欧美日韩国产经典色站一区二区三区| 国产露脸91国语对白| 欧美一卡二卡三卡四卡| 成人免费高清在线观看| 另类中文字幕网| 一区二区在线观看视频| 国产情人综合久久777777| www.欧美.com| 亚洲欧美另类小说视频| 欧美mv日韩mv国产网站| 欧美日本在线播放| 色老头久久综合| 色婷婷久久久亚洲一区二区三区| 国产成人鲁色资源国产91色综 | 久久精品欧美一区二区三区不卡| 欧美一级在线免费| 日韩一区二区在线看| 日韩免费观看高清完整版| 91麻豆精品国产91久久久久久久久 | 久久久国产午夜精品| 欧美麻豆精品久久久久久| 99re这里都是精品| 亚洲一区在线观看免费| 日本免费在线视频不卡一不卡二 | 亚洲电影一级片| 国产一区啦啦啦在线观看| 不卡的电视剧免费网站有什么| 欧美性色aⅴ视频一区日韩精品| 久久欧美一区二区| 亚洲精品免费在线观看| 国产成人精品免费视频网站| 欧美性猛片xxxx免费看久爱| 久久综合成人精品亚洲另类欧美| 夜夜揉揉日日人人青青一国产精品|