布尔值更改按钮单击

时间:2011-01-02 14:12:31

标签: java

每次用户按下某个按钮时bool值会发生变化,最简单的解决方案是什么?我的按钮动作侦听器中唯一的东西是调用某个方法,例如Method1(); 或者使用int是一个更可行的解决方案?

感谢。

4 个答案:

答案 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;


        }

    }
}