⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 jxtaskpanedemopanel.java

📁 java实现浏览器等本地桌面的功能
💻 JAVA
字号:
/* * $Id: JXTaskPaneDemoPanel.java,v 1.3 2005/09/10 13:14:20 l2fprod Exp $ * * Copyright 2004 Sun Microsystems, Inc., 4150 Network Circle, * Santa Clara, California 95054, U.S.A. All rights reserved. */package org.jdesktop.demo.swingx;import java.awt.BorderLayout;import java.awt.Font;import java.awt.event.ActionEvent;import java.util.ResourceBundle;import javax.swing.AbstractAction;import javax.swing.Action;import javax.swing.BorderFactory;import javax.swing.ImageIcon;import javax.swing.JEditorPane;import javax.swing.JScrollPane;import javax.swing.JTabbedPane;import javax.swing.LookAndFeel;import javax.swing.UIManager;import javax.swing.text.html.HTMLDocument;import org.jdesktop.demo.DemoPanel;import org.jdesktop.swingx.JXErrorDialog;import org.jdesktop.swingx.JXTaskPane;import org.jdesktop.swingx.JXTaskPaneContainer;import org.jdesktop.swingx.plaf.LookAndFeelAddons;import org.jdesktop.swingx.plaf.aqua.AquaLookAndFeelAddons;import org.jdesktop.swingx.plaf.metal.MetalLookAndFeelAddons;import org.jdesktop.swingx.plaf.windows.WindowsClassicLookAndFeelAddons;import org.jdesktop.swingx.plaf.windows.WindowsLookAndFeelAddons;import org.jdesktop.swingx.util.JVM;public class JXTaskPaneDemoPanel extends DemoPanel {        static ResourceBundle RESOURCE = ResourceBundle            .getBundle("org.jdesktop.demo.swingx.resources.JXTaskPaneDemoPanelRB");        public JXTaskPaneDemoPanel() {        setName("JXTaskPane Demo");        initComponents();    }        public String getHtmlDescription() {        return RESOURCE.getString("description");    }        public String getName() {        return "Task Panes";    }        public void initComponents() {        LookAndFeel oldLnF = UIManager.getLookAndFeel();        try {            setLayout(new BorderLayout());            setBorder(BorderFactory.createEmptyBorder(10, 10, 10, 10));                        JTabbedPane tabs = new JTabbedPane();                        { // the metal look and feel                UIManager.setLookAndFeel(UIManager                        .getCrossPlatformLookAndFeelClassName());                LookAndFeelAddons.setAddon(MetalLookAndFeelAddons.class);                if (JVM.current().isOrLater(JVM.JDK1_5)) {                    UIManager.getLookAndFeelDefaults().put(JXTaskPane.uiClassID,                            "org.jdesktop.swingx.plaf.misc.GlossyTaskPaneUI");                }                DemoPanel demo = new DemoPanel();                tabs.addTab("Metal L&F", demo);            }                        UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());                        { // the windows look and feel "Luna" style                UIManager.put("win.xpstyle.name", "luna");                LookAndFeelAddons.setAddon(WindowsLookAndFeelAddons.class);                DemoPanel demo = new DemoPanel();                tabs.addTab("Windows (Luna)", demo);            }                        { // the windows look and feel "Homestead" style                UIManager.put("win.xpstyle.name", "homestead");                LookAndFeelAddons.setAddon(WindowsLookAndFeelAddons.class);                DemoPanel demo = new DemoPanel();                tabs.addTab("Windows (Homestead)", demo);            }                        { // the windows look and feel "Metallic" style                UIManager.put("win.xpstyle.name", "metallic");                LookAndFeelAddons.setAddon(WindowsLookAndFeelAddons.class);                DemoPanel demo = new DemoPanel();                tabs.addTab("Windows (Silver)", demo);            }                        UIManager.put("win.xpstyle.name", null);                        { // the windows classic look and feel                LookAndFeelAddons.setAddon(WindowsClassicLookAndFeelAddons.class);                DemoPanel demo = new DemoPanel();                tabs.addTab("Windows (Classic)", demo);            }                        { // the glossy look                LookAndFeelAddons.setAddon(AquaLookAndFeelAddons.class);                DemoPanel demo = new DemoPanel();                tabs.addTab("Glossy", demo);            }                        add("Center", tabs);        } catch (Exception e) {            JXErrorDialog.showDialog(null, "Error", e);        } finally {            try {                UIManager.setLookAndFeel(oldLnF.getClass().getName());            } catch (Exception e) {}        }    }        static class DemoPanel extends JXTaskPaneContainer {                public DemoPanel() {            JXTaskPaneContainer taskPane = new JXTaskPaneContainer();                        // "System" GROUP            JXTaskPane systemGroup = new JXTaskPane();            systemGroup.setTitle(RESOURCE.getString("tasks.systemGroup"));            systemGroup.setToolTipText(RESOURCE                    .getString("tasks.systemGroup.tooltip"));            systemGroup.setSpecial(true);            systemGroup.setIcon(new ImageIcon(JXTaskPaneDemoPanel.class                    .getResource("resources/tasks-email.png")));                        systemGroup.add(makeAction(RESOURCE.getString("tasks.email"), "",                    "resources/tasks-email.png"));            systemGroup.add(makeAction(RESOURCE.getString("tasks.delete"), "",                    "resources/tasks-recycle.png"));                        taskPane.add(systemGroup);                        // "Office" GROUP            JXTaskPane officeGroup = new JXTaskPane();            officeGroup.setTitle(RESOURCE.getString("tasks.office"));            officeGroup.add(makeAction(RESOURCE.getString("tasks.word"), "",                    "resources/tasks-writedoc.png"));            officeGroup.setExpanded(false);            officeGroup.setScrollOnExpand(true);                        taskPane.add(officeGroup);                        // "SEE ALSO" GROUP and ACTIONS            JXTaskPane seeAlsoGroup = new JXTaskPane();            seeAlsoGroup.setTitle(RESOURCE.getString("tasks.seealso"));                        seeAlsoGroup.add(makeAction("The Internet", RESOURCE                    .getString("tasks.internet.tooltip"),                    "resources/tasks-internet.png"));                        seeAlsoGroup.add(makeAction(RESOURCE.getString("tasks.help"),                    RESOURCE.getString("tasks.help.tooltip"),                    "resources/tasks-question.png"));                        taskPane.add(seeAlsoGroup);                        // "Details" GROUP            JXTaskPane detailsGroup = new JXTaskPane();            detailsGroup.setTitle(RESOURCE.getString("tasks.details"));            detailsGroup.setScrollOnExpand(true);                        JEditorPane area = new JEditorPane("text/html", "<html>");                        area.setFont(UIManager.getFont("Label.font"));            area.setEditable(false);            area.setOpaque(false);                        Font defaultFont = UIManager.getFont("Button.font");                        String stylesheet = "body { margin-top: 0; margin-bottom: 0; margin-left: 0; margin-right: 0; font-family: "                    + defaultFont.getName()                    + "; font-size: "                    + defaultFont.getSize()                    + "pt;  }"                    + "a, p, li { margin-top: 0; margin-bottom: 0; margin-left: 0; margin-right: 0; font-family: "                    + defaultFont.getName()                    + "; font-size: "                    + defaultFont.getSize()                    + "pt;  }";            if (area.getDocument() instanceof HTMLDocument) {                HTMLDocument doc = (HTMLDocument)area.getDocument();                try {                    doc.getStyleSheet().loadRules(new java.io.StringReader(stylesheet),                            null);                } catch (Exception e) {                    // TODO: handle exception                }            }                        area.setText(RESOURCE.getString("tasks.details.message"));            detailsGroup.add(area);                        taskPane.add(detailsGroup);                        JScrollPane scroll = new JScrollPane(taskPane);            scroll.setBorder(null);                        setLayout(new BorderLayout());            add("Center", scroll);                        setBorder(null);        }                Action makeAction(String title, String tooltiptext, String iconPath) {            Action action = new AbstractAction(title) {                public void actionPerformed(ActionEvent e) {}            };            action.putValue(Action.SMALL_ICON, new ImageIcon(                    JXTaskPaneDemoPanel.class.getResource(iconPath)));            action.putValue(Action.SHORT_DESCRIPTION, tooltiptext);            return action;        }    }    }

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -