?? jlistexam.java
字號:
package ch7;
import java.awt.*;
import javax.swing.*;
public class JListExam extends JFrame
{
String[] item1={"北","南","西","東","西北","東北","東南","西南","中"};
String[] item2={"NORTH(1)","SOUTH(5)","WEST(7)","ESAT(3)","NORTH_WEST(8)",
"NORTH_EAST(2)","SOUTH_EAST(4)","SOUTH_WEST(6)","CENTER(0)" };
JList list1=new JList(item1); //創建列表對象list1
JList list2=new JList(item2); //創建列表對象list2
public JListExam()
{
super("在列表組件加入圖標演示");
Container contentPane=this.getContentPane(); //獲得容器對象
contentPane.setLayout(new GridLayout(1,2)); //設置容器布局
list1.setBorder(BorderFactory.createTitledBorder("顯示圖標"));//設置列表框標題
list2.setBorder(BorderFactory.createTitledBorder("對應常數(值)顯示"));//設置列表框標題
list1.setCellRenderer(new CellRenderer());//設置用于繪制列表中每個單元的委托
contentPane.add(new JScrollPane(list1)); //以list1對象為參數創建滾動框格添加到容器中
contentPane.add(new JScrollPane(list2));//以list2對象為參數創建滾動框格添加到容器中
this.pack();
this.setVisible(true);
this.setDefaultCloseOperation(this.EXIT_ON_CLOSE);
}
public static void main(String[] args)
{
new JListExam();
}
}
/*單元渲染器代碼如下*/
class CellRenderer extends JLabel implements ListCellRenderer
{
CellRenderer()
{
setOpaque(true); //設置組件是透明的,即繪制組件邊界內的所有像素。
}
/*實現接口方法*/
public Component getListCellRendererComponent(JList list,Object value,int index,boolean isSelected,boolean cellHasFocus)
{
if(value!=null)
{
setText(value.toString());
setIcon(new ImageIcon(".\\i"+(index)+".gif"));//設置圖標文件為顯示圖標
}
return this;
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -