如何使用 Java 禁止透過在 JTable 元件中拖動標題欄來調整列大小
讓我們首先建立一個帶行和列的表格 −
String data[][] = { {"Australia","5","1"},
{"US","10","2"},
{"Canada","9","3"},
{"India","7","4"},
{"Poland","2","5"},
{"SriLanka","5","6"}
};
String col [] = {"Team","Selected Players","Rank"};
DefaultTableModel tableModel = new DefaultTableModel(data,col);
JTable table = new JTable(tableModel);現在,我們將透過拖動標題欄使列不可調整大小 −
table.getTableHeader().setResizingAllowed(false);
以下是一個在 JTable 中透過拖動標題欄禁止調整列大小的示例:−
示例
package my;
import java.awt.Dimension;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JRootPane;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.table.DefaultTableModel;
public class SwingDemo {
public static void main(String[] argv) throws Exception {
JFrame frame = new JFrame("Demo");
JPanel panel = new JPanel();
String data[][] = { {"Australia","5","1"},
{"US","10","2"},
{"Canada","9","3"},
{"India","7","4"},
{"Poland","2","5"},
{"SriLanka","5","6"}
};
String col [] = {"Team","Selected Players","Rank"};
DefaultTableModel tableModel = new DefaultTableModel(data,col);
JTable table = new JTable(tableModel);
table.getTableHeader().setResizingAllowed(false);
Dimension dim = new Dimension(50,2);
table.setIntercellSpacing(new Dimension(dim));
JScrollPane scrollPane = new JScrollPane(table);
panel.add(scrollPane);
frame.add(panel);
frame.setSize(600,400);
frame.setUndecorated(true);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.getRootPane().setWindowDecorationStyle(JRootPane.COLOR_CHOOSER_DIALOG);
frame.setVisible(true);
}
}輸出如下。你無法透過拖動表格標題欄來調整列的大小 −
輸出

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