JAVA圖形界面(GUI)之表格的示例代碼
更新時間:2019年08月21日 09:22:07 作者:蔣固金
這篇文章主要介紹了JAVA圖形界面(GUI)之表格的示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
表格(JTable)是我們在GUI開發(fā)中很常用的一個組件。表格在可視化編程中用于顯示信息,在Swing編程中非常有用,當要顯示大量數(shù)據(jù)時,用表格可以清晰的顯示出來。
本篇博客將演示JTable的基本用法。
構(gòu)造方法:
| 方法名 | 說明 |
|---|---|
| JTable() | 構(gòu)造一個默認的 JTable,使用默認的數(shù)據(jù)模型、默認的列模型和默認的選擇模型對其進行初始化 |
| JTable(int numRows, int numColumns) | 使用 DefaultTableModel 構(gòu)造具有 numRows 行和 numColumns 列個空單元格的 JTable |
| JTable(Object[][] rowData, Object[] columnNames) | 構(gòu)造一個 JTable 來顯示二維數(shù)組 rowData 中的值,其列名稱為 columnNames |
| JTable(TableModel dm) | 構(gòu)造一個 JTable,使用數(shù)據(jù)模型 dm、默認的列模型和默認的選擇模型對其進行初始化 |
| JTable(TableModel dm, TableColumnModel cm) | 構(gòu)造一個 JTable,使用數(shù)據(jù)模型 dm、列模型 cm 和默認的選擇模型對其進行初始化 |
| JTable(TableModel dm, TableColumnModel cm, ListSelectionModel sm) | 構(gòu)造一個 JTable,使用數(shù)據(jù)模型 dm、列模型 cm 和選擇模型 sm 對其進行初始化 |
| JTable(Vector rowData, Vector columnNames) | 構(gòu)造一個 JTable 來顯示 Vector 所組成的 Vector rowData 中的值,其列名稱為 columnNames |
使用示例:
import java.awt.BorderLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.text.MessageFormat;
import java.util.Random;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.table.DefaultTableModel;
/**
* 表格示例
*
* @author jianggujin
*
*/
public class TableDemo extends JFrame
{
// 默認表格模型
private DefaultTableModel model = null;
private JTable table = null;
private JButton addBtn = null;
public TableDemo()
{
super("TableDemo");
String[][] datas = {};
String[] titles = { "列一", "列二" };
model = new DefaultTableModel(datas, titles);
table = new JTable(model);
addBtn = new JButton("添加數(shù)據(jù)");
addBtn.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e)
{
model.addRow(new String[] { getRandomData(), getRandomData() });
}
});
add(addBtn, BorderLayout.NORTH);
add(new JScrollPane(table));
setSize(400, 300);
setLocationRelativeTo(null);
setDefaultCloseOperation(EXIT_ON_CLOSE);
setVisible(true);
}
public static void main(String[] args)
{
new TableDemo();
}
/**
* 獲得隨機字符串,該方法僅用于獲得隨機字符串,可以忽略
*
* @return
*/
private String getRandomData()
{
String source = "0123456789abcdefghijklmnopqrstuvwxyz";
int len = source.length();
Random random = new Random(System.currentTimeMillis());
return MessageFormat.format("{0}{0}{0}", source.charAt(random.nextInt(len)));
}
}
運行效果:

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
解決IDEA service層跳轉(zhuǎn)實現(xiàn)類的快捷圖標消失問題
這篇文章主要介紹了解決IDEA service層跳轉(zhuǎn)實現(xiàn)類的快捷圖標消失問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-02-02
關(guān)于Spring Bean實例過程中使用反射和遞歸處理的Bean屬性填充問題
本文帶領(lǐng)大家一起學(xué)習(xí)下在Spring Bean實例過程中如何使用反射和遞歸處理的Bean屬性填充,需要在類 AbstractAutowireCapableBeanFactory 的 createBean 方法中添加補全屬性方法,具體操作方法跟隨小編一起學(xué)習(xí)下吧2021-06-06
mybatis實現(xiàn)一對一關(guān)聯(lián)映射實例代碼
這篇文章主要給大家介紹了關(guān)于mybatis實現(xiàn)一對一關(guān)聯(lián)映射的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。2017-11-11

