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

📄 disabledcomboboxexample.java

📁 Swing Examples Sources Codes 里包含了Java Web开发的一些实例代码
💻 JAVA
字号:
/* (swing1.1) *///package jp.gr.java_conf.tame.swing.examples;import java.util.*;import java.awt.*;import java.awt.event.*;import javax.swing.*;import javax.swing.border.*;import jp.gr.java_conf.tame.swing.attribute.*;/** * @version 1.0 12/26/98 */  public class DisabledComboBoxExample extends JFrame {  public DisabledComboBoxExample() {    super("Disabled Item ComboBox Example");          Object[] items = {      new ComboItem("A")      ,new ComboItem("B"),      new ComboItem("1",false),new ComboItem("2",false),      new ComboItem("abc")    ,new ComboItem("def")    };                          JComboBox combo = new JComboBox(items);    combo.setRenderer(new ComboRenderer());    combo.addActionListener(new ComboListener(combo));        getContentPane().setLayout(new FlowLayout());    getContentPane().add(combo);    setSize(300, 100);    setVisible(true);  }  public static void main (String args[]) {    DisabledComboBoxExample frame = new DisabledComboBoxExample();    frame.addWindowListener(new WindowAdapter() {      public void windowClosing(WindowEvent e) {	System.exit(0);      }    });  }        class ComboRenderer extends JLabel implements ListCellRenderer {    public ComboRenderer() {      setOpaque(true);      setBorder(new EmptyBorder(1, 1, 1, 1));    }    public Component getListCellRendererComponent( JList list,            Object value, int index, boolean isSelected, boolean cellHasFocus) {      if (isSelected) {        setBackground(list.getSelectionBackground());        setForeground(list.getSelectionForeground());      } else {        setBackground(list.getBackground());        setForeground(list.getForeground());      }	      if (! ((CanEnable)value).isEnabled()) {        setBackground(list.getBackground());        setForeground(UIManager.getColor("Label.disabledForeground"));      }      setFont(list.getFont());      setText((value == null) ? "" : value.toString());      return this;    }    }    class ComboListener implements ActionListener {    JComboBox combo;    Object currentItem;        ComboListener(JComboBox combo) {      this.combo  = combo;      combo.setSelectedIndex(0);      currentItem = combo.getSelectedItem();    }        public void actionPerformed(ActionEvent e) {      Object tempItem = combo.getSelectedItem();      if (! ((CanEnable)tempItem).isEnabled()) {        combo.setSelectedItem(currentItem);      } else {        currentItem = tempItem;      }    }  }    class ComboItem implements CanEnable {    Object  obj;    boolean isEnable;        ComboItem(Object obj,boolean isEnable) {      this.obj      = obj;      this.isEnable = isEnable;    }        ComboItem(Object obj) {      this(obj, true);    }        public boolean isEnabled() {      return isEnable;    }        public void setEnabled(boolean isEnable) {      this.isEnable = isEnable;    }        public String toString() {      return obj.toString();    }  }}

⌨️ 快捷键说明

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