Java'da bir doodle tanrısı tarzı oyun oluşturmaya çalışıyorum, iki JToggleButton açıldığında bunu nasıl yapacağınızı anlayamıyorum, üçüncü bir görünüme neden oluyor. İşte benim girişimim, ama herhangi bir öneride bulunmuyor. Bu konuda yeni ve kafa karıştırıcı. Bir yerde bir ActionListener'a ihtiyacım var, ama nasıl çalıştığından emin değilim. Eclipse w/windows oluşturucu kullanıyorum. Bu meydan okuma için teşekkürler!Diğer düğmeleri görünür hale getirmek için java'da JToggleButton'u kullanma
public class New {
private JFrame frame;
/**
* Launch the application.
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
New window = new New();
window.frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/**
* Create the application.
*/
public New() {
initialize();
}
/**
* Initialize the contents of the frame.
*/
private void initialize() {
frame = new JFrame();
frame.setBounds(100, 100, 450, 300);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.getContentPane().setLayout(null);
JToggleButton waterButton = new JToggleButton("water");
waterButton.addItemListener(new ItemListener() {
public void itemStateChanged(ItemEvent ev) {
if(ev.getStateChange()==ItemEvent.SELECTED){
System.out.println("waterButton is toggled");
}else if(ev.getStateChange()==ItemEvent.DESELECTED){
System.out.println("waterButton is untoggled");
}
}
});
waterButton.setBounds(6, 6, 161, 29);
frame.getContentPane().add(waterButton);
JToggleButton fireButton = new JToggleButton("fire");
fireButton.addItemListener(new ItemListener() {
public void itemStateChanged(ItemEvent ev) {
if(ev.getStateChange()==ItemEvent.SELECTED){
System.out.println("fireButton is toggled");
}else if(ev.getStateChange()==ItemEvent.DESELECTED){
System.out.println("fireButton is untoggled");
}
}
});
fireButton.setBounds(6, 41, 161, 29);
frame.getContentPane().add(fireButton);
JToggleButton steamButton = new JToggleButton("steam");
steamButton.setBounds(6, 82, 161, 29);
frame.getContentPane().add(steamButton);
//steamButton.setVisible(false);
if (waterButton.isSelected() && fireButton.isSelected()){
steamButton.setVisible(true);
}
else{
steamButton.setVisible(false);
}
}
} Burada
Yeni kodla ne yapmaya çalıştığınızdan emin değilim. Bence bu kavramı yanlış anladın. Konuyla ilgili birçok iyi öğretici var =) – TheMirrox
Verdiğim koda bağlı olarak, cevabımı güzel değil, işe yarayan bir çözümle güncelledim. – TheMirrox
ilk kez göründüğünde kalmasını sağlamak için herhangi bir öneri. Buna yarın daha fazla bakacağım, ancak bazı önerileriniz olabilir. Bunu yaparken açılmayacak şekilde görünmeye çalışıyorum. Sonra bir kez bir kez combo yapmak, programın geri kalanı boyunca kalır. Bu işe koyduğunuz çaba için çok teşekkürler, benim için çok bilgilendirici –