У меня есть класс с именем Card
, и этот класс расширяется Thread
поэтому у меня есть переопределение метода run()
и он говорит:
@Override
public void run() {
while (true) {
while (Bingobtn == pressed) {
System.out.println("Thread working is: " + this.ID);
this.d.getDetails(size, this, frmBingo);
Thread t1 = new Thread(d);
t1.start();
Bingobtn = 0;
}
}
}
Я инициализирую static Bingobtn = 0
и static pressed =1
, поэтому у меня есть кнопка в этом классе (Card
) всякий раз, когда я нажимаю кнопку, я давал action:istener
, что Bingobtn=1
;
Bbtn = new JButton("Bingo");
Bbtn.setBackground(Color.YELLOW);
Bbtn.setFont(new java.awt.Font("Castellar", java.awt.Font.BOLD, 22));
Bbtn.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
Bingobtn = 1;
}
});
Но проблема здесь в том, что while(Bingobtn == pressed)
никогда не бывает правдой, даже если я нажимаю кнопку бинго ... это похоже на то, что Bingobtn
никогда не равняется 1!