获得JToggleButton的状态

说我有一个

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"); } } }); 

并且你想知道后来使用isSelected()方法的jtb的状态

 System.out.println(jtb.isSelected()); if(jtb.isSelected()){ System.out.println("button is selected"); } else { System.out.println("button is not selected"); } 

要响应单击,请将ActionListener添加到JToggleButton。 要找到它的状态,就像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); } }