import java.awt.Dimension;
import java.awt.FlowLayout;
import java.util.Date;
import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.ListSelectionModel;
public class SelectionModeDemo {
String[] headings = { "Name", "Customer ID", "Order #", "Status" };
Object[][] data = {
{ "A", new Integer(3), "0", new Date() },
{ "B", new Integer(6), "4", new Date() },
{ "C", new Integer(9), "9", new Date() },
{ "D", new Integer(7), "1", new Date() },
{ "E", new Integer(4), "1", new Date() },
{ "F", new Integer(8), "2", new Date() },
{ "G", new Integer(6), "1", new Date() }
};
JTable jtabOrders = new JTable(data, headings);
SelectionModeDemo() {
JFrame jfrm = new JFrame("JTable Demo");
jfrm.setLayout(new FlowLayout());
jfrm.setSize(460, 180);
jfrm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JScrollPane jscrlp = new JScrollPane(jtabOrders);
jfrm.add(jscrlp);
jtabOrders.setPreferredScrollableViewportSize(new Dimension(420, 60));
//设置选择模式。以下列表描述了接受的选择模式:只能选择一行!
jtabOrders.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
jfrm.setVisible(true);
jtabOrders.setColumnSelectionAllowed(false);
jtabOrders.setRowSelectionAllowed(true);
}
public static void main(String args[]) {
new SelectionModeDemo();
}
}
//设置是否可以选择此模型中的列。
jtabOrders.setColumnSelectionAllowed(false);
//设置是否可以选择此模型中的行。
jtabOrders.setRowSelectionAllowed(true);
//设置此表是否允许同时存在行选择和列选择。
jtabOrders.setCellSelectionEnabled(true);
static int | MULTIPLE_INTERVAL_SELECTION selectionMode 属性的值:一次选择一个或多个连续的索引范围。 |
static int | SINGLE_INTERVAL_SELECTION selectionMode 属性的值:一次选择一个连续的索引范围。 |
static int | SINGLE_SELECTION selectionMode 属性的值:一次选择一个列表索引。 |