表格是最常用的數據統計形式之一,在 swing 中 由 JTable 類實現表格。接下來,我們看看怎么利用 JTable 創建表格。
在 JTable 類中除了默認的構造方法外,還提供了利用指定表格列名數組和表格數據數組創建表格的構造方法,代碼如下:
1
|
JTable(Object[][] rowDate,Object[] columnNames) |
參數說明:
rowDate:封裝表格數據的數組。
columnNames:封裝表格列名的數組。
在使用表格時,通常將其添加到滾動面板中,然后將滾動面板添加到相應的位置。下面看一個例子。
實例1:創建可以滾動的表格。
本實例利用構造方法 JTable(Object[][] rowDate,Object[] columnNames)創建了一個表格,并將表格添加到了滾動面板中,代碼如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
public class ExampleFrame_01 extends JFrame{ public static void main(String[] args) { ExampleFrame_01 frame = new ExampleFrame_01(); frame.setVisible( true ); } public ExampleFrame_01() { super (); setTitle( "創建可以滾動的表格" ); setBounds( 100 , 100 , 240 , 150 ); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); String[] columnNames = { "A" , "B" }; //定義表格列明數組 //定義表格數據數組 String[][] tableValues = {{ "A1" , "B1" },{ "A2" , "B2" },{ "A3" , "B3" }, { "A4" , "B4" },{ "A5" , "B5" },{ "A5" , "B5" },{ "A5" , "B5" },{ "A5" , "B5" }, { "A5" , "B5" },{ "A5" , "B5" },{ "A5" , "B5" },{ "A5" , "B5" },{ "A5" , "B5" }, { "A5" , "B5" },{ "A5" , "B5" }}; //創建指定列明和數據的表格 JTable table = new JTable(tableValues,columnNames); //創建顯示表格的滾動面板 JScrollPane scrollPane = new JScrollPane(table); //將滾動面板添加到邊界布局的中間 getContentPane().add(scrollPane, BorderLayout.CENTER); } } |
運行本實例,適當調整窗體高度,將出現滾動條。
在 JTable 類中還提供了利用指定表格列名向量和表格數據向量創建表格的構造方法,代碼如下:
1
|
JTable(Vector rowData.Vector columnNames) |
參數說明:
rowDate:封裝表格數據的向量;
columnNames:封裝表格列名的向量。
在使用表格時,有時并不需要使用滾動條,即在窗體中可以顯示出整個表格,在這種情況下,也可以直接將表格添加到相應的容器中。
實例2:創建不可滾動的表格。
本實例利用構造方法 JTable(Vector rowData, Vector columnNames)創建了一個表格,并將表格直接添加到了容器中,代碼如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
public class ExampleFrame_02 extends JFrame{ public static void main(String[] args) { ExampleFrame_02 frame = new ExampleFrame_02(); frame.setVisible( true ); } public ExampleFrame_02() { super (); setTitle( "創建不可滾動的表格" ); setBounds( 100 , 100 , 240 , 150 ); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); Vector<String>columnNameV = new Vector<>(); columnNameV.add( "A" ); columnNameV.add( "B" ); Vector<Vector<String>>tableValueV = new Vector<>(); for ( int row = 1 ;row< 6 ;row++) { Vector<String>rowV = new Vector<>(); rowV.add( "A" +row); rowV.add( "B" +row); tableValueV.add(rowV); } //創建指定表格列名和表格數據的表格 JTable table = new JTable(tableValueV,columnNameV); //將表格添加到邊界布局的中間 getContentPane().add(table,BorderLayout.CENTER); JTableHeader tableHeader = table.getTableHeader(); getContentPane().add(tableHeader,BorderLayout.NORTH); } } |
運行本實例,當上下調整窗體高度時,不會出現滾動條。如果將上面代碼中的最后兩行去掉,再次運行,會發現新的窗體中表格沒有列名。
總結
以上就是關于創建可滾動和不可滾動的表格的方法和相關實例,希望對大家有所幫助。
感謝大家對服務器之家的支持!