每次用户按下某个按钮时bool值会发生变化,最简单的解决方案是什么?我的按钮动作侦听器中唯一的东西是调用某个方法,例如Method1(); 或者使用int是一个更可行的解决方案?
感谢。
答案 0 :(得分:5)
更简单:
buttonFlag = ! buttonFlag;
答案 1 :(得分:1)
在班级的字段中加上一个标志变量。
示例:
private boolean bottonFlag = false.
在您的方法中执行:
bottonFlag = bottonFlag == true ? false : true; // this is to switch between true and false
答案 2 :(得分:1)
我建议在这种情况下使用JToggleButton或JCheckBox。对用户来说更自然,任何一个组件都可以存储它的状态,而不会声明任何进一步的布尔值。
E.G。
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
class ToggleButton {
public static void main(String[] args) {
final JLabel result = new JLabel("Hit the button!");
final JToggleButton switchButton = new JToggleButton("Switch");
switchButton.addActionListener( new ActionListener() {
public void actionPerformed(ActionEvent ae) {
result.setText("" + switchButton.isSelected());
}
} );
JPanel p = new JPanel(new GridLayout(0,1));
p.add(switchButton);
p.add(result);
JOptionPane.showMessageDialog(null, p);
}
}
答案 3 :(得分:0)
我认为这正是你要找的!!希望它有所帮助。
private boolean booly;
private class WinkAction implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
if (!booly){
booly = true;
}else {
booly = false;
}
}
}