📄 介绍.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 + -