ボタンを押して機能を続行するまでプログラムを待機させる方法を探しています。メイン関数では、JPanel、ボタン、およびラベルを使用して基本的な GUI を表示する関数を呼び出しています。もちろん、それはGUIを表示し、その機能を終了してGUIを変更できないようにします。
public static Player player = new Player();
public static Gui gui = new Gui();
public static boolean inMain = true;
public static boolean inBattle = false;
public static void main(String[] args){
showMainGui();
}
私が探しているのは、次のようなものだと思います。
public static void main(String[] args){
showMainGui();
while(inBattle == false){
// wait until inBattle changes
}
}
while ループはループし、showMainGui で作成されたボタンが inBattle で true に変わるまで待機します。どうすれば正確にこれを行うことができますか? これはかなり混乱しています。私の目標は、JButtonをクリックすると、ボタンが別のボタンに変わることです
showMainGui(); で作成したボタンのアクション リスナー。
public class Hunt implements ActionListener{
@Override
public void actionPerformed(ActionEvent e) {
MainClass.inBattle = true;
}
}
ここに私の showMainGui() メソッドがあります
public static void showMainGui(){
gui.panel.add(gui.healthLabel);
gui.panel.add(gui.pbsLabel);
gui.panel.add(gui.staminaLabel);
gui.panel.add(gui.levelLabel);
//Adding initial buttons
gui.panel.add(gui.exploreButton);
gui.panel.add(gui.huntButton);
gui.panel.add(gui.newsLabel);
gui.panel.add(gui.effectLabel);
updateGui();
}