如何获取JTogleButton的状态?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (99)

我有一个

JToggleButton but = new JToggleButton("OK") ;

现在我需要的是but当它被点击的时候。我需要知道它是否被点击了。

提问于
用户回答回答于

还可以使用itemListener的itemStateChanged方法,如下所示:

JToggleButton jtb = new JToggleButton("Press Me");
jtb.addItemListener(new ItemListener() {
   public void itemStateChanged(ItemEvent ev) {
      if(ev.getStateChange()==ItemEvent.SELECTED){
        System.out.println("button is selected");
      } else if(ev.getStateChange()==ItemEvent.DESELECTED){
        System.out.println("button is not selected");
      }
   }
});

你想知道jtb后一种使用isSelected()方法

System.out.println(jtb.isSelected());
if(jtb.isSelected()){
    System.out.println("button is selected");
} else {
    System.out.println("button is not selected");
}
用户回答回答于

若要响应单击,请向JToggliButton添加ActionListener。要找到它的状态,就像JRadioButton一样,调用它的isSelected()方法。

例如,

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JOptionPane;
import javax.swing.JToggleButton;

public class ToggleTest {
   public static void main(String[] args) {
      JToggleButton toggleBtn = new JToggleButton("Toggle Me!");
      toggleBtn.addActionListener(new ActionListener() {

         public void actionPerformed(ActionEvent e) {
            JToggleButton tBtn = (JToggleButton)e.getSource();
            if (tBtn.isSelected()) {
               System.out.println("button selected");
            } else {
               System.out.println("button not selected");
            }
         }
      });

      JOptionPane.showMessageDialog(null, toggleBtn);
   }
}

所属标签

可能回答问题的人

  • 华讯云

    0 粉丝0 提问11 回答
  • EatRice

    16 粉丝0 提问6 回答
  • 卓脑域名

    0 粉丝0 提问6 回答
  • gulu丶咕噜

    0 粉丝1 提问6 回答

扫码关注云+社区

领取腾讯云代金券