/* (swing1.1) */
package tame.examples;
import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import javax.swing.DefaultCellEditor;
import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.event.ListDataEvent;
import javax.swing.table.DefaultTableModel;
import tame.combobox.SteppedComboBox;
/**
@author Nobuo Tamemasa
@version 1.0 3/06/99
*/
public class SmallCellComboExample extends JFrame {
public SmallCellComboExample() {
super( "SmallCell Combo Example" );
DefaultTableModel dm = new DefaultTableModel(4,10) {
public void setValueAt(Object obj, int row, int col) {
if (obj != null) {
String str;
if (obj instanceof String) {
str = ((String)obj).substring(0,2);
} else {
str = obj.toString();
}
super.setValueAt(str, row, col);
}
}
};
JTable table = new JTable( dm );
String[] str = {
"010 - To Time",
"020 - Vacation",
"030 - Feel Bad"
};
SteppedComboBox combo = new SteppedComboBox(str) {
public void contentsChanged(ListDataEvent e) {
selectedItemReminder = null;
super.contentsChanged(e);
}
};
Dimension d = combo.getPreferredSize();
combo.setPopupWidth(d.width);
DefaultCellEditor editor = new DefaultCellEditor(combo);
table.setDefaultEditor(Object.class, editor);
JScrollPane scroll = new JScrollPane( table );
getContentPane().add(scroll, BorderLayout.CENTER);
}
public static void main(String[] args) {
SmallCellComboExample frame = new SmallCellComboExample();
frame.addWindowListener( new WindowAdapter() {
public void windowClosing( WindowEvent e ) {
System.exit(0);
}
});
frame.setSize( 300, 120 );
frame.setVisible(true);
}
}
|
|