Ben tıklandığındaJToggleButton
JToggleButton but = new JToggleButton("OK") ;
Şimdi but
durumunu ihtiyaç olduğunu varsayalım. Diyelim ki tıklanıp tıklanmadığını bilmem gerek.
Ben tıklandığındaJToggleButton
JToggleButton but = new JToggleButton("OK") ;
Şimdi but
durumunu ihtiyaç olduğunu varsayalım. Diyelim ki tıklanıp tıklanmadığını bilmem gerek.
Ayrıca takip gibi itemListener en itemStateChanged yöntemi kullanabilirsiniz:
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");
}
}
});
ve isSelected()
yöntemini
jtb
durumunu bilmek istiyorum arasında Yanıtın daha fazla olması için
System.out.println(jtb.isSelected());
if(jtb.isSelected()){
System.out.println("button is selected");
} else {
System.out.println("button is not selected");
}
Tıklamaları yanıtlamak için, JToggleButton'a bir ActionListener ekleyin. Durumunu bulmak için, bir JRadioButton gibi, isSelected() yöntemini çağırın. eg için
,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);
}
}
. + 1'd – KJW
Bu olay düzenine dayanan korkarım. ActionPerformed işlevi, dahili düğme geçişini dinlemeden önce çağrıldığında, [zıt sonuç] alırsınız (https://weblogs.java.net/blog/alexfromsun/archive/2011/06/15/swing-better-world- dinleyici). – maaartinus
bunu uygulamak için iyi bir yoldur, 1+ :) –
Teşekkürler @Harry Joy. Bu gerçekten iyi bir ayrıntı ... :) – Dewsworld
Java8'den bu yana lambda ifadesini kullanabilirsiniz ama.addItemListener ((ItemEvent ev) -> {/ * kodunuz * /} –