将JTable单元与操作相关联

时间:2014-08-07 07:51:37

标签: java swing user-interface jtable cell

在JTable中,我将JButtons作为表格单元格。每个特定按钮应该启动不同的操作。我怎样才能做到这一点?这些行动是由我定义的。

谢谢!

1 个答案:

答案 0 :(得分:-1)

您是否考虑过将动作添加到渲染器内的按钮?

public class MyRenderer implements TableCellRenderer {


    public Component getTableCellRendererComponent(
        JTable table, Object color,
        boolean isSelected, boolean hasFocus,
        int row, int column) {

        if (some_condition) {

            JButotn b1 = new JButton('A')

            b1.addActionListener(new ActionListener() {
                actionPerformed(ActionEvent e) {
                    //do stuff
                }
            }

            return b1;
        }else if (some__other_condition) {
            JButotn b2 = new JButton('B')

            b2.addActionListener(new ActionListener() {
                actionPerformed(ActionEvent e) {
                    //do stuff
                }
            }

            return b2;
        }
    }
}

它可能不是最正确的表现方式,但如果不了解更多关于你的应用程序的话,我的帮助远远不止于此。