Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/401.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在jtable中添加列的actionlistener_Java_Swing_Jtable_Jtableheader - Fatal编程技术网

Java 在jtable中添加列的actionlistener

Java 在jtable中添加列的actionlistener,java,swing,jtable,jtableheader,Java,Swing,Jtable,Jtableheader,大家好。。 我再次需要帮助。:) 如何做到这一点?当我单击列t1时,必须弹出另一个表单来解释列t1的情况,例如,在时间1,指令1处于fetch阶段。然后,当我单击naman t2列时,指令2处于提取阶段,指令1处于解码阶段,依此类推 先谢谢你。我真的需要你的帮助。。 问候……) 通常应该是这样的 Listener listener = new Listener() { public void handleEvent(Event e) { TableColumn column = (T

大家好。。 我再次需要帮助。:)

如何做到这一点?当我单击列t1时,必须弹出另一个表单来解释列t1的情况,例如,在时间1,指令1处于fetch阶段。然后,当我单击naman t2列时,指令2处于提取阶段,指令1处于解码阶段,依此类推

先谢谢你。我真的需要你的帮助。。
问候……)

通常应该是这样的

Listener listener = new Listener() {
  public void handleEvent(Event e) {
    TableColumn column = (TableColumn) e.widget;
    System.out.println(column);
  }
};

您可以从事件中获取列,然后对其执行所需操作。

您需要添加以下代码块

    table.addMouseListener(new MouseAdapter() {
        public void mouseClicked(MouseEvent e) {
            // This is for double click event on anywhere on JTable
            if (e.getClickCount() == 2) {
                JTable target = (JTable) e.getSource();
                int row = target.getSelectedRow();
                int column = target.getSelectedColumn();
               // you can play more here to get that cell value and all
                new DialogYouWantToOpen(row, Column);
            }
        }

    });
双击将打开的对话框

class DialogYouWantToOpen extends JDialog{
       JLabel testLabel = new JLable();
       public DialogYouWantToOpen(int row, int column){
         setSize(200,200)
         setLayout(new FlowLayout());
         testLabel.setText("User double clicked at row "+row+" and column "+ column);
         add(testLabel);
       }

}   

从问题上看不是很明显,但这是关于挥杆的:-)