【发布时间】:2011-09-07 09:26:57
【问题描述】:
我在一个按钮组中有许多按钮,它们需要在切换时使用它们包含的文本作为查询来搜索数据库。
我如何调用按钮的自身,而不是为每个按钮输入特定的事件代码?
所需的伪代码:searchDB(genericSelf.getText())
尝试使用 this 关键字并摆弄 getComponent,但我确信存在更有效的方法。
【问题讨论】:
标签: java swing components call self
我在一个按钮组中有许多按钮,它们需要在切换时使用它们包含的文本作为查询来搜索数据库。
我如何调用按钮的自身,而不是为每个按钮输入特定的事件代码?
所需的伪代码:searchDB(genericSelf.getText())
尝试使用 this 关键字并摆弄 getComponent,但我确信存在更有效的方法。
【问题讨论】:
标签: java swing components call self
怎么样:
public void actionPerformed(ActionEvent evt) {
JButton source = (JButton) evt.getSource();
// source is your "this"
}
【讨论】:
MouseListener 只监听鼠标事件,但它可以识别你是否单击了一次或两次,并且可以插入任何组件(标签、面板,你可以命名它)。 ActionListener 更抽象,用于各种可以触发动作的按钮和事物。请注意,您也可以在带有键盘的按钮上触发操作 - 这是ActionListener 触发的地方,但MouseListener 不会触发。