如何创建自定义事件并以编程方式将其发送到 成分
E.g。如果我有一个JButton
并希望创建ActionEvent
或MouseEvent
而不是将其发送为
如果用户按下了我要使用的代码?
以下代码不起作用:
JButton btn = new JButton("Click...");
MouseAdapter my = new MouseAdapter()
{
public void mousePressed(MouseEvent e)
{
area.setText("Button clicked!!!");
}
};
btn.addMouseListener(my);
MouseEvent me = new MouseEvent(btn, MouseEvent.BUTTON1, 1, 0, 1, 1, 1, false);
btn.dispatchEvent(my);
答案 0 :(得分:1)
对于您的具体示例,您只需致电AbstractButton#doClick
。
如果您需要为一般情况创建合成事件,请确保填写真实AWTEvent
所具有的所有字段,因为事件处理程序可能认为它们是理所当然的。
答案 1 :(得分:0)
我认为您可以使用Event作为参数调用dispatchEvent
方法