我的JLabel / Button计数器不起作用

时间:2013-10-30 20:11:28

标签: java swing jframe jbutton mainclass

我在这里得到了一个小的JLabel计数器程序,基本上应该在我按“+1”时向计数器添加一个数字但是当我尝试运行它时它说它无法在我的tCounter中找到主类。这里的ButtonAction类是我的代码,希望你能帮助我。

    package tCounter;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.SwingConstants;

public class ButtonAction {
 static int Zahl = 0;
    public static void createAndShowGUI()  {

        JFrame frame1 = new JFrame("JAVA");
        frameg1.setText(String.valueOf(Zahl));
        frame1.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

            JButton button = new JButton("+1");
        //Add action listener to button
        button.addActionListener(new ActionListener() {

            public void actionPerformed(ActionEvent e)
            {
                //Execute when button is pressed
                //System.out.println("You clicked the button");
                Zahl = Zahl +1;
               String Penis = Integer.toString(Zahl);
                System.out.println(Zahl);
            }
        });      

        frame1.getContentPane().add(button);
        frame1.pack();
        frame1.setVisible(true);
    }

    private static class frameg1 {

        private static void setText(String valueOf) {
            throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
        }

        public frameg1() {
        }
    }
}

2 个答案:

答案 0 :(得分:1)

每个Java应用程序至少需要一个具有public static void main(String args[]) {...}方法的类,该方法充当应用程序的主要入口点。

详细了解Java Tutorials了解更多详情

Swing对初始化Swing应用程序也有一些特殊要求......

public static void main(String args[]) {
    EventQueue.invokeLater(new Runnable() {
        @Override
        public void run() {
            try {
                UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
            } catch (ClassNotFoundException | InstantiationException | IllegalAccessException | UnsupportedLookAndFeelException ex) {
                ex.printStackTrace();
            }

            ButtonAction.createAndShowGUI();
        }
    });
}

有关详细信息,请参阅Initial Threads

答案 1 :(得分:-2)

每个java程序都需要一个main方法。这是应用程序开始工作的起点。它应该定义为:

public static void main(String arg[]){

}

我认为对你来说,你想要添加这样的方法:

public static void main(String arg[]){
    ButtonAction ba = new ButtonAction();
    ba.createAndShowGUI();
}

你在这里做的是说,当应用程序启动时,你想要创建一个ButtonAction对象,并且你想在该对象上调用createAndShowGUI()方法,它启动所有运行的东西。

但是,你不应该有名为“阴茎”的变量,所以我觉得我可能在这里浪费了时间。