JButton и логическое значение - PullRequest
1 голос
/ 02 декабря 2011

Хорошо, поэтому я уже несколько часов оглядывался по сторонам и не нашел ни одного полезного ответа. Так или иначе, я в настоящее время изучаю программирование и не могу найти свою ошибку. Я использовал затмение, чтобы найти свою ошибку, но она не показывает никаких ошибок.

Так или иначе, я хочу, чтобы эта кнопка включалась и выключалась, и для этого я создал логическое значение turnOn и установил для его начального значения значение false

Я добавил JButton и связал его с «ActionListener», но когда я запускаю свою программу и нажимаю на кнопку, она не включается.

По сути, он должен показывать drawLine, когда я нажимаю на кнопку и возвращаюсь обратно. Я уверен, что это, вероятно, ошибка стартера, но я не могу понять это.

Код:


import javax.swing.*;
import java.awt.Color;
import java.awt.Graphics;
import java.awt.event.*;

public class MijnProject extends JPanel{

private JTextField tekstvak1;
private JLabel label1;
private JButton knop;
private boolean turnOn=false;

    public MijnProject(){

        label1 = new JLabel("Aantal zeepjes");
        tekstvak1 = new JTextField(10);
        knop = new JButton("Aan/Uit");
        knop.addActionListener(new StartknopHandler());
        add (label1);
        add (tekstvak1);
        add (knop);

    }

    public void paintComponent(Graphics g) {
        super.paintComponent(g);
        g.setColor(Color.GRAY);
        g.fillRect(20, 100, 5, 400);

        if(turnOn==true){
            g.setColor(Color.BLUE);
            g.drawLine(55, 125, 35, 500);
        }
    }

    class StartknopHandler implements ActionListener {
        public void actionPerformed(ActionEvent e) {
            if(turnOn==false){
                turnOn = true;
            }
        }
    }

}

1 Ответ

1 голос
/ 04 апреля 2012

Вы должны использовать JToggleButton для этой цели.

...