簡體   English   中英

我的JButton不起作用

[英]My JButtons don't work

    import java.awt.BorderLayout;
import javax.swing.*;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import java.beans.PropertyChangeListener;
import javax.swing.JButton;
import java.awt.Dimension;



public class Guii extends JFrame{
    Principal obiect;
    public JButton heads = new JButton("Heads");
    public JButton tails = new JButton("Tails");
    public JTextField display = new JTextField();
    public JTextField comboul = new JTextField();
    private JPanel panel;
    public int predictie;

    public Guii(){
        super("Heads or Tails");
        setContentPane(panel);
        initUi();
        pack();
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setVisible(true);

         /* public void dacaHeads(){
            if(heads.getModel().isPressed()) predictie = 0;


        public void dacaTails(){
            if(tails.getModel().isPressed()) predictie = 1;*/

    }
    public void initUi(){



        heads.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e){
                predictie = 0;
                obiect.flip();

                if(predictie == obiect.returnStatus() ){
                    String s = comboul.getText();
                    int combo = Integer.valueOf(s);
                    s = Integer.toString(++combo);
                    comboul.setText("asdsaad");}
                else{
                    String z = "0";
                    comboul.setText("asdasda");
                }
            }
        });

        tails.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e){
                predictie = 1;
                obiect.flip();
                if(predictie == obiect.returnStatus() ){
                    String s = comboul.getText();
                    int combo = Integer.valueOf(s);
                    s = Integer.toString(++combo);
                    comboul.setText(s);}
                else{
                    String z = "0";
                    comboul.setText(z);
                }
            }





        });}}

為什么我的按鈕不起作用?我想我添加了所有功能,我做了按鈕,添加了actionListener和actionPerfomed。還添加了@Override,因為有人說過。

我在另一個類中使用了while函數檢查了它。謝謝。

據我所知,您沒有在任何地方添加按鈕(和文本字段)。 另外,添加偵聽器的方法不會被調用-偵聽器本身除外,但是不會添加任何方法...

嘗試將按鈕添加到構造函數中的面板,然后還將偵聽器添加到按鈕。

在哪里初始化面板,按鈕,文本字段? 此代碼無法正常工作。 看看您的控制台輸出!

該代碼必須包含以下內容:

panel = new JPanel();
panel.add(heads);
panel.add(tails);
panel.add(display);
panel.add(comboul);

setContentPane(panel);

而且看起來您忘記了調用dacaTails(); 因此,也將其添加到構造中。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM