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

📄 demopanel.java

📁 JAVA皮肤设计,很不错的!!现与大家共同学习
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
      button.addActionListener(        new ActionListener() {          public void actionPerformed(ActionEvent event) {            innerSplit.setOneTouchExpandable(!innerSplit.isOneTouchExpandable());            split1.setOneTouchExpandable(!split1.isOneTouchExpandable());          }        });    }  }  /**   * Description of the Class   *   * @author    fred   * @created   27 avril 2002   */  static class InternalTest extends BasePanel {    /**     * Constructor for the InternalTest object     */    InternalTest() {      setLayout(new BorderLayout());      JDesktopPane desk = new JDesktopPane();      add("Center", new JScrollPane(desk));      desk.putClientProperty("JDesktopPane.backgroundEnabled", Boolean.TRUE);      desk.putClientProperty("JDesktopPane.dragMode", "faster");      JInternalFrame frame = new JInternalFrame("A Frame (DO_NOTHING_ON_CLOSE)", true, true, true, true);      frame.getContentPane().add(new JScrollPane(new JTree()));      frame.setVisible(true);      frame.setSize(200, 100);      frame.setDefaultCloseOperation(JInternalFrame.DO_NOTHING_ON_CLOSE);      frame.addVetoableChangeListener(        new VetoableChangeListener() {          public void vetoableChange(PropertyChangeEvent event) throws PropertyVetoException {            if (event.getPropertyName().equals(JInternalFrame.IS_CLOSED_PROPERTY) &&                Boolean.TRUE.equals(event.getNewValue())) {              JOptionPane.showMessageDialog((JInternalFrame) event.getSource(),                  "You can veto Frame Closing here!");              throw new PropertyVetoException("don't close!", event);            }            // end of if (event.getPropertyName().equals()          }        });      desk.add(frame);      //      // this frame has a workaround for a bug in Swing where setIconifiable does not fire any event      // until JDK1.4      //      final JInternalFrame frame2 =        new JInternalFrame("An other Frame", true, true, true, true) {          public void setIconifiable(boolean b) {            if (OS.isOneDotFour()) {              super.setIconifiable(b);            }            else {              Boolean oldValue = isIconifiable() ? Boolean.TRUE : Boolean.FALSE;              Boolean newValue = b ? Boolean.TRUE : Boolean.FALSE;              super.setIconifiable(b);              this.firePropertyChange("iconable", oldValue, newValue);            }          }        };      frame2.getContentPane().setLayout(new GridLayout(3, 1));      JButton button = new JButton("Toggle closable");      button.addActionListener(        new ActionListener() {          public void actionPerformed(ActionEvent event) {            frame2.setClosable(!frame2.isClosable());          }        });      frame2.getContentPane().add(button);      button = new JButton("Toggle iconifiable");      button.addActionListener(        new ActionListener() {          public void actionPerformed(ActionEvent event) {            frame2.setIconifiable(!frame2.isIconifiable());          }        });      frame2.getContentPane().add(button);      frame2.setMaximizable(false);      frame2.setVisible(true);      frame2.setSize(200, 200);      frame2.setLocation(50, 50);      desk.add(frame2);      JInternalFrame frame3 = new JInternalFrame("Not iconifiable",          true, true, true, false);      frame3.setIconifiable(false);      frame3.setSize(200, 200);      frame3.setLocation(75, 75);      frame3.setVisible(true);      desk.add(frame3);    }  }  /**   * Description of the Class   *   * @author    fred   * @created   27 avril 2002   */  static class TextTest extends BasePanel {    /**     * Constructor for the TextTest object     */    TextTest() {      setLayout(new VerticalLayout());      add(new JLabel("This is a testbed for the key bindinds"));      add(new JLabel("JTextField:"));      add(new JTextField("please try the key bindings"));      add(new JLabel("JPasswordField:"));      add(new JPasswordField());      JScrollPane scroll;      add(new JLabel("JTextArea:"));      add(scroll = new JScrollPane(new JTextArea("please try the key bindings\nthis is skin look and feel", 4, 50)));      scroll.setPreferredSize(new Dimension(100, 60));      add(new JLabel("JTextPane:"));      add(scroll = new JScrollPane(new JTextPane()));      scroll.setPreferredSize(new Dimension(100, 60));      add(new JLabel("JEditorPane:"));      add(scroll = new JScrollPane(new JEditorPane()));      scroll.setPreferredSize(new Dimension(100, 60));    }  }  /**   * Description of the Class   *   * @author    fred   * @created   27 avril 2002   */  static class TablePanel extends BasePanel {    /**     * Constructor for the TablePanel object     */    TablePanel() {      setLayout(new BorderLayout());      JTable table = new JTable(        new AbstractTableModel() {          public int getRowCount() {            return 50000;          }          public int getColumnCount() {            return 5;          }          public Object getValueAt(int row, int column) {            if (column == 1) {              return new Integer((int)(((double)100 * row) / getRowCount()));            } else {              return new Integer(row * column);            }          }        });      add("Center", new JScrollPane(table));            table.getColumnModel().getColumn(1).setCellRenderer(new JProgressBarCellRenderer());      // here is an example of overriding the default table cellrenderer to provide a custom one while reusing      // while reusing the skin tablecellrenderer      final Icon arrowIcon =        new Icon() {          public int getIconWidth() {            return 10;          }          public int getIconHeight() {            return 10;          }          public void paintIcon(Component c, Graphics g, int x, int y) {            Color oldColor = g.getColor();            g.setColor(Color.black);            g.drawRect(x, y, 10, 10);            g.setColor(oldColor);          }        };      TableCellRenderer headerRenderer =        new TableCellRenderer() {          public Component getTableCellRendererComponent(JTable table, Object value,              boolean isSelected, boolean hasFocus,              int row, int column) {            DefaultTableCellRenderer c =                (DefaultTableCellRenderer) SkinLookAndFeel.getSkin().getPersonality().createTableHeaderRenderer();            c.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column);            if (column == 0) {              c.setForeground(Color.red);              c.setIcon(arrowIcon);            }            else {              c.setIcon(null);            }            return c;          }        };      Enumeration enumeration = table.getColumnModel().getColumns();      while (enumeration.hasMoreElements()) {        TableColumn aColumn = (TableColumn) enumeration.nextElement();        aColumn.setHeaderRenderer(headerRenderer);      }      table.getTableHeader().setReorderingAllowed(false);    }  }  /**   * Description of the Class   *   * @author    fred   * @created   27 avril 2002   */  static class ComboList extends BasePanel {    /**     * Constructor for the ComboList object     */    ComboList() {      setLayout(new VerticalLayout());      add(new JLabel("Normal ComboBox:"));      add(new JComboBox(new String[]{"1", "2", "4", "8"}));      JComboBox disabled = new JComboBox(new String[]{"1", "2", "4", "8"});      disabled.setEnabled(false);      add(new JLabel("Disabled ComboBox"));      add(disabled);      add(new JLabel("Editable ComboBox"));      final JComboBox editable = new JComboBox(new String[]{"1", "2", "4", "8"});      //	    editable.setEditable(true);      add(editable);      JButton b = new JButton("Toggle Editable");      b.addActionListener(        new ActionListener() {          public void actionPerformed(ActionEvent event) {            editable.setEditable(!editable.isEditable());          }        });      add(b);      class FontCellRenderer extends DefaultListCellRenderer {         public Component getListCellRendererComponent(JList list,                                                      Object value,                                                      int index,                                                      boolean isSelected,                                                      boolean cellHasFocus) {          String fontName = ((Font)value).getFontName();           return super.getListCellRendererComponent(list, fontName,                                                    index, isSelected,                                                    cellHasFocus);        }      };      JComboBox fonts =        new JComboBox(GraphicsEnvironment.getLocalGraphicsEnvironment().                      getAllFonts());       FontCellRenderer render = new FontCellRenderer();      fonts.setOpaque(false);      fonts.setRenderer(render);       add(fonts);      // JDK1.4 only      try {        add((JComponent) Class.forName("javax.swing.JSpinner").newInstance());      } catch (Exception e) {      }    }  }    static class ListPanel extends BasePanel {    ListPanel() {      setLayout(new BorderLayout());            ListModel model = new AbstractListModel() {          public Object getElementAt(int index) {            return new Integer((int)(((double)100 * index) / getSize()));          }          public int getSize() {            return 10;          }        };            JList list = new JList(model);      list.setCellRenderer(new ListComponentRenderer());      list.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);      list.setFixedCellWidth(272);      list.setFixedCellHeight(21);      JScrollPane listScrollPane = new JScrollPane(list);      add("Center", listScrollPane);    }  }  static class ListComponentRenderer extends BasePanel implements ListCellRenderer {    JProgressBar progBar;    public ListComponentRenderer() {      // Configure this      setLayout(new BoxLayout(this, BoxLayout.X_AXIS));      setBorder( BorderFactory.createCompoundBorder(                                                    BorderFactory.createEtchedBorder(),                                                    BorderFactory.createEmptyBorder(2, 2, 2, 2)));      setOpaque(true);            // Configure progBar      progBar = new JProgressBar(JProgressBar.HORIZONTAL, 0, 100);      progBar.setBorder(BorderFactory.createRaisedBevelBorder());      progBar.setPreferredSize(new Dimension(100, 15));      progBar.setMinimumSize(new Dimension(100, 15));      progBar.setMaximumSize(new Dimension(100, 15));      progBar.setValue(0);            add(new JLabel("Fixed Size Label"));      add(progBar);    }    /**     *   Comply with ListCellRenderer Interface     *   @param list the JList doing the renderering     *   @param value object being rendered     *   @param index cell index     *   @param isSelected is selected     *   @param cellHasFocus cell has focus?     *   @return Component to render     */    public Component getListCellRendererComponent(JList list, Object value, int index,                                                  boolean isSelected, boolean cellHasFocus) {      progBar.setValue(((Integer)value).intValue());      setBackground(isSelected ? Color.red : Color.white);      setForeground(isSelected ? Color.white : Color.black);      return this;    }  }  static class JProgressBarCellRenderer extends JProgressBar implements TableCellRenderer {    public JProgressBarCellRenderer() {      super();      Dimension progressSize = new Dimension(50, 8);      setMaximumSize(progressSize);      setPreferredSize(progressSize);      setMinimumSize(progressSize);    }        public Component getListCellRendererComponent(JList list, Object value, int index,                                                  boolean isSelected, boolean cellHasFocus) {      setBackground(list.getBackground());      handleValue(value);      return this;    }        public Component getTreeCellRendererComponent(JTree tree, Object value, boolean selected,                                                  boolean expanded, boolean leaf, int row, boolean hasFocus) {      setBackground(tree.getBackground());      handleValue(value);      return this;    }        public Component getTableCellRendererComponent(JTable table, Object value,                                                   boolean isSelected, boolean hasFocus,                                                   int row, int column) {      setBackground(table.getBackground());      handleValue(value);      return this;    }    /**     * Called by getListCellRendererComponent, getTreeCellRendererComponent, getTableCellRendererComponent to render the value.     * The default implementation checks the type of value and sets the model or the value correctly.     *     * @param value an <code>Object</code> value     */    protected void handleValue(Object value) {      if (value instanceof BoundedRangeModel) {        setModel((BoundedRangeModel)value);      } else {        setValue(((Integer)value).intValue());      }    }  }  static class ChooserPanel extends BasePanel {    public ChooserPanel() {      setLayout(new GridLayout(3, 1));      JButton button = new JButton("Pick a Color");      add(button);      button.addActionListener(new ActionListener() {          public void actionPerformed(ActionEvent event) {            JColorChooser.showDialog(null, "Pick a Color", null);          }        });    }  }    }

⌨️ 快捷键说明

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