关于JTable设置数据源以及获取焦点行数据问题
来源:互联网 发布:linux 进程调度 编辑:程序博客网 时间:2024/06/07 03:02
这两天完成了一个学生信息管理系统,其中Swing做界面,mysql为数据库。
其中,显示数据库的数据我是用的JScrollPane中添加Jtable的方法做的,把数据库的内容作为数据源显示在JTable中,以下是相关代码:
JFrame中
table = new JTable(new MyTableModel(list)); //传入数据源
jsp = new JScrollPane(table);
table.setBounds(0, 0, 600, 400);
jsp.setBounds(50, 70, 600, 400);
特别还注意的是要设置新的数据源信息可以用table.setModel(new MyTableModel(list));方法
数据源 MyTableModel中
public class MyTableModel extends AbstractTableModel
{
StudentImpl si = new StudentImpl();
//表头
String[] names = null;
//数据
String[][] datas = null;
public MyTableModel(List<StudentBean> list)//构造函数传入数据源信息
{
/*构造数据*/
names = getNames();
if(list==null){
list = si.getAll();
}
datas = new String[list.size()][];
for(int i=0;i<list.size();i++)
{
StudentBean sb = list.get(i);
String gender = null;
if(sb.isGender()){
gender = "男";
}
else gender = "女";
datas[i] = new String[]{sb.getSno()+"",sb.getSname(),sb.getAge()+"",gender,sb.getBirthday()+""} ;
}
}
在做到删除功能时,我有些犹豫,本来想通过再创建个jFrame然后传id删的,但考虑再三后觉得不太妥,于是百度了下如何获取JTable中焦点行的数据,以下是相关代码:
String num = "" + table.getValueAt(table.getSelectedRow(),0).toString();//得到选中行的学号,其中getSelectedRow()方法取得所在选择的行,参数0代表该行的第一列。
要获得焦点行所在的所有列的数据,只需对参数加个循环即可。
- 关于JTable设置数据源以及获取焦点行数据问题
- jtable 定义 获取行数据
- 关于 JTable 刷新绘制(repaint) 以及JTable各属性设置
- android 关于获取焦点问题
- EditText自动获取焦点问题设置
- 14.59 设置表格焦点 JTable.setFocusable
- 关于ListView获取焦点的问题
- 关于ListView获取焦点的问题
- 关于jquery获取table行数据方法
- 设置EditText获取焦点
- JTable中怎样获取鼠标所在位置的行数
- JTable不手动变更焦点获取新输入的值
- JTable不手动变更焦点获取新输入的值
- input输入框获取焦点、获取焦点位置、焦点设置
- 关于EditText获取焦点,隐藏软键盘的问题
- 关于 activity 中 button 获取焦点的问题
- 关于最下方 EditText 获取焦点 界面上移的问题
- android关于EditText获取焦点的一个问题
- 在ios中编写程序实现录音功能
- HTML实体符号代码
- dhtmlxCombo初始化加载,jquery请求加载数据
- 3----多表查询
- Leetcode Minimum Path Sum
- 关于JTable设置数据源以及获取焦点行数据问题
- 互联网视频的统计术语及定义
- net jquery.pagination.js 无刷新分页 不需<%=count%>
- JAVASE自学笔记IO File
- ipconfig命令
- KMP模式匹配算法
- 软软解析之缓存游标的迷惑-----已解决!
- python - Local variable referenced before assignment
- C++_模板举例_使用模板实现集合类(堆栈)