从JTable读取数据

时间:2019-04-27 10:05:20

标签: java algorithm swing user-interface jtable

我需要从BookInfo表中获取BookID。 当我按下“添加”按钮时,应该弹出“保留”窗口,并在表中写入BookID,发行日期和退货日期。 因此,我需要将BookID作为对象传递给Reservation。

我尝试创建图书信息的新实例,或将字符串传递给预订...

$client = new Client([ 'base_uri' => 'http://api.domain.com']);
$response = $client->post(
        '/api/dosomething',
        [
            'multipart' => [
                [
                  'Content-type' => 'multipart/form-data',
                  'name' => 'photo_1',
                  'contents' => $request->file('photo_1')
                ]
            ]
         ]
); 

2 个答案:

答案 0 :(得分:0)

我不确定我是否理解您的用户界面是什么样,您想要什么行为或您当前已经实现了什么。提出问题时,请尝试使描述更加清晰,并提供所有相关代码;它不能从创建JButton的时间和位置以及在该范围内拥有哪些信息(这些信息是回答问题所需的一些最关键的信息)的代码派生而来。

假设您通过遍历表模型并为每行创建一个按钮来呈现表,那么您已经在actionListener的作用域中拥有BookID作为其中一列的值。您只需要将其添加到您的侦听器代码中即可。

一种类似的替代方法涉及使用按钮的actionCommand将String数据与按钮相关联。然后,您可以从调用actionPerformed方法的ActionEvent中检索此信息。 Here's one example。但我认为这里没有任何理由使用这种方法。只是增加了复杂性,以上解决方案更加简单自然。

如果我对如何创建表的假设是错误的,则可以附加一个mouseListener而不是一个actionListener,例如here,以便从事件中获取行并访问相关列。

答案 1 :(得分:-1)

您可以使用下面的代码读取所有jtable数据

     DefaultTableModel model =  (DefaultTableModel) jTable1.getModel();
     Vector data = model.getDataVector();

     for (Object data1 : data) {
         System.out.println(data1);
    }