我是靠谱客的博主 无语红酒,最近开发中收集的这篇文章主要介绍swing jtable绑定数据库 获取用户选择行的数据,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

//jtable绑定数据库
public void fillTableFromDB(JTable table)
{
conn myconn = new conn();
ResultSet myrs;
DefaultTableModel tm = new DefaultTableModel(); //定义数据模式
try
{
myrs = myconn.queryDB("select * from catalogDict "); // 查询数据库,获取结果集
Vector<Vector<String>> data = new Vector<Vector<String>>(); //创建二维Vector,用于保存数据
Vector<String> columnNames = new Vector<String>(); //创建一维Vector,用于存储表头信息
//设置表头

columnNames.add("分类编号");
columnNames.add("分类名称");
columnNames.add("文件类型");
columnNames.add("施工场所");
while (myrs.next()) //循环读取查询结果集中的数据,并逐一添加到二维Vector中
{
//System.out.println(myrs.getObject(1)+"
"+myrs.getObject(2));
Vector<String> row = new Vector<String>();
row.add(myrs.getObject(1).toString());
row.add(myrs.getObject(2).toString());
row.add(myrs.getObject(3).toString());
row.add(myrs.getObject(4).toString());
data.add(row);
}
TableModel model; // 再次创建一个TableModel,用于存储整个jTable的结构,含表头与表数据
model = new DefaultTableModel(data, columnNames);
table.setModel(model); // 向jTable中添加TableModel,
// 以下为设置jTable各列的宽度
TableColumnModel columns = table.getColumnModel();
int[] columnWidth =
{ 100, 400, 100, 100 };
for (int i = 0; i < 4; i++)
{
TableColumn column = columns.getColumn(i);
column.setPreferredWidth(columnWidth[i]);
}
table.setColumnModel(columns);
} catch (SQLException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
}



//获取用户选择的某一行的数据,并第1、2列的数据显示到jTextField中,第3、4列的数据绑定显示到jComboBox中
private void jTable1MouseClicked(java.awt.event.MouseEvent evt)
{
int selectedRowIndex = jTable1.getSelectedRow();
int columnsCount = jTable1.getColumnCount();
String selectedRowValue[] = new String[4];
jTextField1.setText(jTable1.getValueAt(selectedRowIndex, 0).toString());
jTextField2.setText(jTable1.getValueAt(selectedRowIndex, 1).toString());
if (jTable1.getValueAt(selectedRowIndex, 2).toString().equals("图纸设计说明"))
{
jComboBox1.setSelectedIndex(0);
} else if (jTable1.getValueAt(selectedRowIndex, 2).toString()
.equals("设计图纸"))
{
jComboBox1.setSelectedIndex(2);
} else if (jTable1.getValueAt(selectedRowIndex, 2).toString()
.equals("施工文档"))
{
jComboBox1.setSelectedIndex(1);
}
if (jTable1.getValueAt(selectedRowIndex, 3).toString().equals("区间"))
{
jComboBox2.setSelectedIndex(0);
} else if (jTable1.getValueAt(selectedRowIndex, 3).toString()
.equals("车站"))
{
jComboBox2.setSelectedIndex(1);
}
}


最后

以上就是无语红酒为你收集整理的swing jtable绑定数据库 获取用户选择行的数据的全部内容,希望文章能够帮你解决swing jtable绑定数据库 获取用户选择行的数据所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(68)

评论列表共有 0 条评论

立即
投稿
返回
顶部