?? iconcomboboxdemo.java
字號(hào):
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
//顏色選擇下拉框演示
public class IconComboBoxDemo extends JFrame{
JLabel iconLabel=null; //用來(lái)響應(yīng)列表框選擇的變化
JComboBox iconComboBox=null; //定制的選擇下拉框
public IconComboBoxDemo(){
//定義Object二維數(shù)組,用于初始化下拉框,參數(shù)依次為圖標(biāo),顯示文本,提示文本
Object[][] obj={
{new ImageIcon("1.gif"),"旅游","提供旅游的最新信息"},
{new ImageIcon("2.gif"),"音樂(lè)","提供最新的音樂(lè)資訊,古典的、流行的..."},
{new ImageIcon("3.gif"),"聊天","與朋友聊天"},
{new ImageIcon("4.gif"),"影視","影視娛樂(lè)"},
{new ImageIcon("5.gif"),"家居","家居世界"},
};
//初始化下拉框
iconComboBox = new JComboBox();
iconComboBox.setMaximumRowCount(3); //設(shè)置最大可視行數(shù)
iconComboBox.setRenderer(new IconRenderer()); //設(shè)置單元繪制器
for (int i=0;i<obj.length;i++){ //增加數(shù)組中的所有元素到下拉框中
iconComboBox.addItem(obj[i]);
}
//初始化iconLabel信息
iconLabel = new JLabel();
//下拉框事件處理,用匿名類實(shí)現(xiàn)
iconComboBox.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent evt){ //處理事件
Object[] obj = (Object[])iconComboBox.getSelectedItem(); //得到選擇的內(nèi)容,此處為一維數(shù)組
iconLabel.setIcon((Icon)obj[0]); //設(shè)置iconLabel的圖標(biāo)
iconLabel.setText(obj[1].toString()); //設(shè)置iconLabel的文本
}
});
//增加組件到主窗體上
this.getContentPane().setLayout(new BorderLayout()); //設(shè)置布局管理器
this.getContentPane().add(iconComboBox,BorderLayout.NORTH); //在上方增加下拉框
this.getContentPane().add(iconLabel,BorderLayout.CENTER); //在中間增加iconLabel,用于響應(yīng)選擇的變化
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //關(guān)閉窗口時(shí)退出程序
this.setSize(350,260); //設(shè)置窗口尺寸
this.setVisible(true); //顯示窗口
}
public static void main(String[] args){
new IconComboBoxDemo();
}
}
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -