?? 介紹.txt
字號:
1.實現ListCellRenderer接口:
getListCellRendererComponent(JList list, Object obj, int row, boolean sel, boolean hasFocus)
list為下拉框;value為單元的值,在本例中為一元數組,分別存放將繪制的圖片與文字;index為單元的
索引值;isSelected表示單元是否被選中;cellHasFocus表示單元是否有焦點。
2.使用定制組件:
iconComboBox = new JComboBox();
iconComboBox.setMaximumRowCount(3); //設置最大可視行數
iconComboBox.setRenderer(new IconRenderer()); //設置單元繪制器
for (int i=0;i<obj.length;i++)
{
iconComboBox.addItem(obj[i]); //增加數組中的所有元素到下拉框中
}
使用定制組件與使用標準組件有兩點不同。一是傳入的參數為一維數組(addItem為一維數組),數組內容
分是圖標、顯示文本和提示文本;二是調用setRenderer方法設置單元繪制器為已經實現的IconRenderer。
3.事件處理:
//下拉框事件處理,用匿名類實現
iconComboBox.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent evt){ //處理事件
Object[] obj = (Object[])iconComboBox.getSelectedItem(); //得到選擇的內容,此處為一維數組
iconLabel.setIcon((Icon)obj[0]); //設置iconLabel的圖標
iconLabel.setText(obj[1].toString()); //設置iconLabel的文本
}
});
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -