如果選擇JToggle按鈕上的文本,如果不選中,將其設置爲「OFF」,是否可以將其設置爲「ON」? 我使用這個代碼:是否有可能使JToggle文本取決於其狀態?
if(togbut.isSelected()){
togbut.setText("ON");
}
else if(!togbut.isSelected()){
togbut.setText("OFF");
}
但它不起作用。 我使用NetBeans 7.3。
如果選擇JToggle按鈕上的文本,如果不選中,將其設置爲「OFF」,是否可以將其設置爲「ON」? 我使用這個代碼:是否有可能使JToggle文本取決於其狀態?
if(togbut.isSelected()){
togbut.setText("ON");
}
else if(!togbut.isSelected()){
togbut.setText("OFF");
}
但它不起作用。 我使用NetBeans 7.3。
你的代碼幾乎是正確的。
它必須放在切換按鈕的更改偵聽器中。
toggleButton.addChangeListener(new ChangeListener() {
@Override
public void stateChanged(ChangeEvent event) {
if (toggleButton.isSelected()){
toggleButton.setText("ON");
} else {
toggleButton.setText("OFF");
}
}
});
或ItemListener,ActionListner – mKorbel 2013-05-03 12:42:59
只需添加一個動作監聽你的togbut:
togbut.AddActionListener(this);
而在actionPerformed()方法中添加代碼。
此外,我不認爲一個JToggleButton中可以有比Selected
和!Selected
其他國家 所以,你可以changee你如果結構是:
if(togbut.isSelected()){
togbut.setText("ON");
} else {
togbut.setText("OFF");
}
你有一個ItemListener
附加到切換按鈕:
final JToggleButton togbut = new JToggleButton();
togbut.addItemListener(new ItemListener() {
@Override
public void itemStateChanged(ItemEvent e) {
if (e.getStateChange() == ItemEvent.SELECTED) {
togbut.setText("ON");
} else {
togbut.setText("OFF");
}
}
});
嗯試試這個:
JToggleButton togbut = new JToggleButton("Click");
togbut.addItemListener(new ItemListener() {
public void itemStateChanged(ItemEvent ev) {
if(ev.getStateChange()==ItemEvent.SELECTED){
togbut.setText("ON");
} else if(ev.getStateChange()==ItemEvent.DESELECTED){
togbut.setText("OFF");
}
}
});
你需要將ItemListener
界面添加到課程中,在那裏使用您的JToggleButton
。執行應該是這樣的:
public class MyClassThatUsesToggleButton implements ItemListener{
//
// some code
//
JToggleButton toggleButton;
public void itemStateChanged(ItemEvent e) {
if(e.getStateChange() == ItemEvent.SELECTED)
{
toggleButton.setText("On!");
totalGUI.setBackground(Color.green);
}
else
{
toggleButton.setText("Off");
totalGUI.setBackground(Color.red);
}
//
// some more code
//
}
或者你可以使用這個方法,@Gilbert Le Blanc建議你......如果它更好,我的或他的依賴於你想要捕捉的動作的次數。 – Dworza 2013-05-03 12:46:44
你把這段代碼放在哪裏?在您註冊了該切換按鈕的更改事件的Listener中? – Kai 2013-05-03 12:38:14