2010-05-19 188 views
0

我在我的Java Swing应用程序中创建了一个带有JButton的主窗口。我为这个按钮添加了一个事件监听器类(实现ActionListener接口),每次单击按钮时,都会启动一个“弹出式”窗口。 单击按钮时该方法正常工作,除非首次单击该按钮,因为它什么也不做。有没有人知道背后的原因?有问题的JButton事件监听器

+3

请编辑您的问题并添加您的代码。我想你会得到更好的帮助。 – Pindatjuh 2010-05-19 21:03:03

回答

2

更简单的方法可能是提供AbstractAction。你可以尝试下面概述的方法。 (点击按钮时会弹出一个窗口。)

import java.awt.*; 
import java.awt.event.ActionEvent; 
import javax.swing.*; 
public class FrameTest { 
    public static void main(String[] args) { 
     JFrame jf = new JFrame("Demo"); 
     Container cp = jf.getContentPane(); 
     cp.setLayout(new FlowLayout()); 
     cp.add(new JButton(new AbstractAction("Button Text") { 
      public void actionPerformed(ActionEvent e) { 
       JOptionPane.showMessageDialog(null, "Hello World"); 
      } 
     })); 
     jf.setSize(200, 200); 
     jf.setVisible(true); 
    } 
} 
1

发布事件处理程序的代码以及如何将它附加到按钮可能会有所帮助。您可能需要快速查看此Sun Tutorial