JTable单击事件求助,大佬们快来

qq_41824536 2018-03-11 10:20:08
最近学校Java实践,遇到下边问题
public static void B() {//余票查询界面
int i=0;
int j=0;
JFrame find=new JFrame("查询");
DefaultTableModel model;
JTable ja;
find.setLayout(null);
find.setBounds(200,150,700,550);
find.setVisible(true);
find.setResizable(false);
JTextField findticket=new JTextField();
findticket.setBounds(5,10,200,30);
JButton sure=new JButton("查找");
sure.setBounds(205,10,75,30);
JButton re=new JButton("重置");
re.setBounds(280,10,75,30);
JLabel JLa=new JLabel("当前用户ID:"+user_id);
JLa.setBounds(525,5,200,25);
try {
Statement sql=con.createStatement();
ResultSet rs=sql.executeQuery("select * from ticket");
while(rs.next()) {
i++;
}
}
catch(SQLException e1) {}
Object[][] playerInfo=new Object[i][5];
try {
Statement sql=con.createStatement();
ResultSet rs=sql.executeQuery("select * from ticket");
while(rs.next()) {
Date date=rs.getDate("ticket_date");
int num=rs.getInt("ticket_num");
int sur=rs.getInt("ticket_surplusnum");
int price=rs.getInt("ticket_price");
String ticketname=rs.getString("ticket_name");
playerInfo[j][0]=ticketname;
playerInfo[j][1]=date;
playerInfo[j][2]=num;
playerInfo[j][3]=sur;
playerInfo[j][4]=price;
j++;
}
j=0;
}
catch(SQLException e1) {}
String[] Names = { "票名", "日期", "总票数","剩余票数", "售价"};
model=new DefaultTableModel(playerInfo, Names);
ja=new JTable(model);
ja.setEnabled(false);
JScrollPane JSP=new JScrollPane(ja);
JSP.setBounds(5,50,350,460);
find.add(JSP);
find.add(findticket);
find.add(sure);
find.add(re);
find.add(JLa);
sure.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
int k=0;
String SS=findticket.getText();
System.out.println(SS);
try {
Statement sql=con.createStatement();
ResultSet rs=sql.executeQuery("select * from ticket where ticket_name=\""+SS+"\"");
while(rs.next()) {
k++;
}
System.out.println(k);
}
catch(SQLException e1) {}
Object[][] P=new Object[k][5];
try {
int j=0;
Statement sql=con.createStatement();
ResultSet rs=sql.executeQuery("select * from ticket where ticket_name=\""+SS+"\"");
while(rs.next()) {
Date date=rs.getDate("ticket_date");
int num=rs.getInt("ticket_num");
int sur=rs.getInt("ticket_surplusnum");
int price=rs.getInt("ticket_price");
String ticketname=rs.getString("ticket_name");
P[j][0]=ticketname;System.out.println(ticketname);
P[j][1]=date;System.out.println(date);
P[j][2]=num;System.out.println(num);
P[j][3]=sur;System.out.println(sur);
P[j][4]=price;System.out.println(price);
j++;
}
model.setDataVector(P, Names);
ja.setModel(model);
ja.setEnabled(false);



}
catch(SQLException e1) {}
}
});

就是一个JTable表格。我希望可以点击某一行,获取到该行单元格的信息。网上有单击事件教程,大概能看懂但是不知道应该在哪里加代码,实践一下也总是不对。大佬们帮忙看看应该怎么改
...全文
300 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
qq_41824536 2018-03-13
  • 打赏
  • 举报
回复
自己实验试出来了,不过结帖的话分就浪费了,等几天再结帖
Sunyiban 2018-03-12
  • 打赏
  • 举报
回复
能不能粘个能运行的代码
qq_41824536 2018-03-11
  • 打赏
  • 举报
回复
大佬快来,大佬快来

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧