Tag: actionlistener

如何找出点击了哪个按钮?

我的按钮工作正常,我是每个按钮的监听器,如下所示: for(int i = 0; i <= 25; ++i) { buttons[i] = new Button(Character.toString(letters[i])); buttons[i].addActionListener(actionListener); panel1.add(buttons[i]); } 在这里你可以看到监听器被调用,我想知道我点击了哪个按钮。 有没有办法做到这一点? ActionListener actionListener = new ActionListener() { public void actionPerformed(ActionEvent actionEvent) { System.out.println(actionEvent.getSource()); } }; 我需要一些方法来找到数组中的按钮。

JLabel或JTable单元格上的ActionListener

我有一个带有JLabel[][]的JTable作为数据。 现在我想检测双击JLabel或表格单元格(但仅在其中一列中)。 如何在JLabel和表格单元格上添加Action / MouseListener?

JMenu ActionListener

我想知道你是否可以测试是否点击了JMenu(而不是JMenuItem)。 我尝试添加一个ActionListener,但它似乎没有识别它。 我只需要在按下JMenu按钮时执行操作,这样我就可以在打开时更改该菜单的JMenuItems。 欢迎所有的工作来获得这个结果! 谢谢

为JPanel使用addMouseListener()和paintComponent()

这是我上一个问题的后续行动。 我尽可能地简化了事情,但它仍然不起作用! 虽然我使用getGraphics()获得了好处。 关于这里出了什么问题的详细解释非常受欢迎。 我怀疑这里使用addMouseListener()方法的方式有问题。 编辑完全重写了代码。 但仍然无法正常工作。 import java.awt.Color; import java.awt.Graphics; import java.awt.event.MouseEvent; import java.awt.event.MouseListener; import java.awt.event.MouseMotionListener; import javax.swing.JFrame; import javax.swing.JPanel; public class RunClass{ static MainClass1 inst1 = new MainClass1(); public static void main(String args[]){ JFrame frame1 = new JFrame(); frame1.add(inst1); frame1.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame1.setTitle(“NewPaintToolbox”); frame1.setSize(200, 200); frame1.setLocationRelativeTo(null); frame1.setVisible(true); } } class MainClass1 extends JPanel implements MouseListener, […]

如何添加侦听多个按钮的动作侦听器

我试图弄清楚我对动作听众做错了什么。 我正在关注多个教程,但是当我尝试使用动作监听器时,netbeans和eclipse会给我错误。 下面是一个简单的程序,我试图让一个按钮工作。 我究竟做错了什么? import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.JButton; import javax.swing.JFrame; public class calc extends JFrame implements ActionListener { public static void main(String[] args) { JFrame calcFrame = new JFrame(); calcFrame.setSize(100, 100); calcFrame.setVisible(true); JButton button1 = new JButton(“1”); button1.addActionListener(this); calcFrame.add(button1); } public void actionPerformed(ActionEvent e) { if(e.getSource() == button1) } } 动作监听器永远不会注册,因为if(e.getSource() == button1)它看不到button1 […]

如何通过单击JButton添加JPanel?

我正在尝试创建一个小的GUI,它有2个JButton和2个JPanel,每个都有一些绘图动画。 默认情况下,它必须显示第一个JPanel,并通过单击第二个JButton我想看到我的第二个JPanel。 所以:我创建了JFrame,Panel1和Panel2,在那里我绘制了我的动画,创建了Button1和Button2并添加了ActionListeners。 我还有MainPanel,它有一个字段变量i。 通过更改此“i”我的构造函数将MainPanel添加到Panel1(默认)或Panel2(通过单击JButton2我更改i)。 比我把这个MainPanel添加到我的框架。 所以我的问题:在类MainPanel中我有refreshMe方法,我应该在那里写什么才能让我的GUI正常工作? 谢谢。 这是我的代码: import java.awt.Color; import java.awt.Dimension; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JPanel; public class GuiTest { public static void main(String[] args) { JFrame f = new JFrame(); MainPanel myPanel = new MainPanel(); f.add(myPanel); Button1 button1 = new Button1(); Button2 button2 = new Button2(); myPanel.add(button1); […]

Java KeyListener与Keybinding

我想写一个计算器并遇到问题。 我已经为所有按钮创建了一个actionlistener,现在我希望能够从键盘输入数据。 我是否需要为KeyListener或Keybinding完成整个事情,还是有任何其他方法可以在单击按钮后将其发送到actionlistener中的指令? 什么更好:Keylistener或Keybinding