📄 editableheadertableexample2.java
字号:
/* (swing1.1.1) */package tame.examples;import java.awt.Component;import java.awt.event.WindowAdapter;import java.awt.event.WindowEvent;import javax.swing.DefaultCellEditor;import javax.swing.JComboBox;import javax.swing.JFrame;import javax.swing.JScrollPane;import javax.swing.JTable;import javax.swing.table.TableCellRenderer;import javax.swing.table.TableColumnModel;import tame.table.EditableHeader;import tame.table.EditableHeaderTableColumn;/**@author Nobuo Tamemasa@version 1.0 08/22/99*/public class EditableHeaderTableExample2 extends JFrame { public EditableHeaderTableExample2(){ super( "EditableHeader Example" ); JTable table = new JTable(7, 5); TableColumnModel columnModel = table.getColumnModel(); table.setTableHeader(new EditableHeader(columnModel)); String[] items = {"Dog","Cat"}; JComboBox combo = new JComboBox(); for (int i=0;i<items.length;i++) { combo.addItem(items[i]); } ComboRenderer renderer = new ComboRenderer(items); EditableHeaderTableColumn col; // column 1 col = (EditableHeaderTableColumn)table.getColumnModel().getColumn(1); col.setHeaderValue(combo.getItemAt(0)); col.setHeaderRenderer(renderer); col.setHeaderEditor(new DefaultCellEditor(combo)); // column 3 col = (EditableHeaderTableColumn)table.getColumnModel().getColumn(3); col.setHeaderValue(combo.getItemAt(0)); //col.setHeaderRenderer(renderer); col.setHeaderEditor(new DefaultCellEditor(combo)); JScrollPane pane = new JScrollPane(table); getContentPane().add(pane); } class ComboRenderer extends JComboBox implements TableCellRenderer { ComboRenderer(String[] items) { for (int i=0;i<items.length;i++) { addItem(items[i]); } } public Component getTableCellRendererComponent( JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) { setSelectedItem(value); return this; } } public static void main(String[] args) { EditableHeaderTableExample2 frame = new EditableHeaderTableExample2(); frame.addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent e) { System.exit(0); } }); frame.setSize( 300, 100 ); frame.setVisible(true); }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -