addItem = new JButton("Add");
gc.gridwidth = GridBagConstraints.RELATIVE;
gc.weightx = 1.0;
panel.add(addItem, gc);
我能够做到这样吗:
addEventHandler(MouseEvent.MOUSE_PRESSED, new EventHandler<MouseEvent>() {
public void handle(MouseEvent me) {
而不是这个我想要那个按钮,但我不知道addItem做了什么,因为它不允许我在那里添加名称。
有没有办法在不修改问题开头给出的4行代码的情况下做到这一点?
答案 0 :(得分:0)
使用内部类而不是EventHandler的代码。
addItem.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
//do something
}
});
您可以在java官方网站上获得更多相关信息。
请参阅:http://docs.oracle.com/javase/7/docs/api/java/beans/EventHandler.html
如果只添加鼠标监听器,则在使用键盘时不会出现'press'事件。因此,如果您的要求严格限制在鼠标按下,请使用以下代码段:)
addItem.addMouseListener(new MouseListener() {
@Override
public void mouseReleased(MouseEvent e) {
// do something
}
@Override
public void mousePressed(MouseEvent e) {
// do something
}
@Override
public void mouseExited(MouseEvent e) {
// do something
}
@Override
public void mouseEntered(MouseEvent e) {
// do something
}
@Override
public void mouseClicked(MouseEvent e) {
// do something
}
});
答案 1 :(得分:0)
您可以做的是将ActionListener添加到按钮单击中,或者如果您想要添加MouseListener,实际上它取决于您想要做什么
addItem.addActionListener(new ActtionListener() {...});