如何往Jtable中添加数据?

如何往Jtable中添加数据?,第1张

可以使用Swing的DefaultTableModel类。

DefaultTableModel model = new DefaultTableModel()// 新建一个默认数据模型

JTablt table = new JTable(model)// 用数据模型创建JTable,JTable会自动监听到数据模型中的数据改变并显示出来

JScrollPane jsp = new JScrollPane(table)// 用列表创建可滚动的Panel,把这个Panel添加到窗口中

Vector row = new Vector()// 数据行向量,使用它的add()添加元素,比如整数、String、Object等,有几行就new几个行向量

Vector data = new Vector()// 数据行向量集,因为列表不止一行,往里面添加数据行向量,添加方法add(row)

Vector names = new Vector()// 列名向量,使用它的add()方法添加列名

model.setDataVector(Vector data, Vector names)// 设置模型中的元素,它会自动显示在列表中

编写该JTable的TableModel的String getColumnName(int columnIndex)方法

//传进来的是列的索引值

//返回该列的列名

//给JTable设置好TableModel后,这个方法由系统自动调用

//显示在JTable中

public String getColumnName(int columnIndex){

return "你想要设置的对应列的列名"

}

eg.:

public String getColumnName(int columnIndex){

if(columnIndex == 1) return "索引值为 1 的列的名字"

if(columnIndex == 2) return "索引值为 2 的列的名字"

...

}

给你个例子看看吧 刚才 别人问的

import javax.swing.*

import java.awt.*

import java.util.*

@SuppressWarnings("serial")

public class Vectordemo extends JFrame {

JScrollPane jspane

Vector<Vector<Object>>vector1 = new Vector<Vector<Object>>()

JTable table

public Vectordemo() {

super("VectorExample")

this.getContentPane().setLayout(new BorderLayout())

Vector<String>vector2 = new Vector<String>()

vector2.add("编号")

vector2.add("书名")

vector2.add("作者")

vector2.add("出版社")

vector2.add("ISBN")

vector2.add("定价")

for (int i = 0i <10i++) {

Object date[] = { i + 1, "程序设计", "科学", "清华大学出版社", "2345", "39.5" }

Vector<Object>vector3 = new Vector<Object>()

for (int j = 0j <date.lengthj++) {

vector3.add(date[j])

}

vector1.add(vector3)

}

table = new JTable(vector1, vector2)

jspane = new JScrollPane(table)

this.add(jspane, BorderLayout.CENTER)

this.setSize(360, 200)

this.setVisible(true)

}

public static void main(String args[]) {

new Vectordemo()

}

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11626070.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-17
下一篇 2023-05-17

发表评论

登录后才能评论

评论列表(0条)

保存