在 Java 中如何設定表模型中的列可以被選中或取消選擇?
我們可以使用 setColumnSelectionAllowed() 來設定或取消允許選擇表格中的列。
假設我們的表格如下 −
DefaultTableModel tableModel = new DefaultTableModel(); JTable table = new JTable(tableModel);
如果你想允許選擇列,那麼將此方法設定為 TRUE −
table.setColumnSelectionAllowed(true);
如果你想禁止選擇列,那麼將此方法設定為 FALSE −
table.setRowSelectionAllowed(false);
以下示例中,我們禁止了選擇列 −
示例
package my;
import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.table.DefaultTableModel;
public class SwingDemo {
public static void main(String[] argv) throws Exception {
DefaultTableModel tableModel = new DefaultTableModel();
JTable table = new JTable(tableModel);
tableModel.addColumn("Language/ Technology");
tableModel.addColumn("Text Tutorial");
tableModel.addColumn("Video Tutorial");
tableModel.addColumn("Interview QA");
tableModel.addRow(new Object[] { "ASP.NET", "Yes", "Yes", "Yes"});
tableModel.addRow(new Object[] { "F#", "Yes", "No", "Yes"});
tableModel.addRow(new Object[] { "SharePoint", "Yes", "Yes", "Yes"});
tableModel.addRow(new Object[] { "AWS", "No", "No", "Yes"});
tableModel.addRow(new Object[] { "Blockchain", "Yes", "No", "Yes"});
tableModel.addRow(new Object[] { "C#", "Yes", "Yes", "Yes"});
tableModel.addRow(new Object[] { "Java", "Yes", "No", "Yes"});
tableModel.addRow(new Object[] { "NodeJS", "No", "Yes", "Yes"});
tableModel.addRow(new Object[] { "MVC", "Yes", "No", "Yes"});
table.setRowHeight(3, 30);
table.setColumnSelectionAllowed(false);
JFrame f = new JFrame();
f.setSize(600, 400);
f.add(new JScrollPane(table));
f.setVisible(true);
}
}輸出如下。現在你無法選擇列 −
輸出

廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP