Swingクラスを使用してJFrameでウィンドウを表示させているのですが、何故かShooting gameのタイトル画面を作ろうとして、
キー入力処理を処理するために、Whileを書いて処理をループさせようとしたのですが、何故かそうするとJFrameのウインドウが表示されなくなってしまいました。 どうすればJFrameウインドウを表示しながらループ処理が組めるのでしょうか?どなたか改善方法を教えて下さい。
ループ処理に入るとウインドウが表示されません。
ちなみにそのプログラムはこちらです。
プログラム
Java
1 2//import 3import java.awt.*; 4import javax.swing.*; 5import java.applet.Applet; 6import java.awt.event.KeyEvent; 7 8class Mine extends JFrame{ 9 10//メンバ変数 11static boolean Speace_key=false; 12 13static boolean UP_key=false; 14static boolean DOWN_key=false; 15static boolean LEFT_key=false; 16static boolean RIGHT_key=false; 17 18 //メイン関数。 19 public static void main(String args[]){ 20 //Show window 21 Mine frame = new Mine("Shooting game"); 22 frame.setResizable(false); 23 frame.setVisible(true); 24 } 25 26//サブ関数。 27 Mine(String title){ 28 setTitle(title); 29//コンポーネント系を追加。 30enableEvents(java.awt.AWTEvent.KEY_EVENT_MASK);//キー入力処理の有効化 31 32//変数宣言 33int x=0; int y=0; 34 35int HP=3; int score=0; 36int Lv=1; int xp=0; 37 38int tm_x=0; int tm_y=0; 39 40int tx=0; int ty=0; 41 42 //ウィンドウを表示 43 setSize(800, 700); 44 setLocationRelativeTo(null); 45 setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 46 //ここから先が表示プログラム 47 setLayout(new FlowLayout()); 48 49 //文字描画システム初期化 50 JLabel Text = new JLabel("Starting game if please space key"); 51 Text.setPreferredSize(new Dimension(500, 510)); 52 Text.setFont(new Font(null,0,30)); 53 54//JFrameにオブジェクトを追加 55 add(Text); 56 57//タイトル画面終了判別プログラム。 58while(true){ 59 if(Speace_key==true){ 60 Text.removeAll(); 61 break;} 62} 63 64 65 66 67 } 68 @Override 69 protected void processKeyEvent(KeyEvent e){ 70 71 if(e.getKeyCode()==KeyEvent.VK_SPACE){ 72 Speace_key=true; 73 } 74 if(e.getKeyCode()!=KeyEvent.VK_SPACE){ 75 Speace_key=false; 76 } 77 78 } 79}
試したこと
見ていた講座を視聴し直しましたが、解決方法は見つかりませんでした。
補足情報
パソコンのOS:Windows10 グラフィックボードの機種:AMD
プログラミングに使用したIDE:Netbeans64
使用プログラミング言語:Java
今までに参考にした動画シリーズ:YouTube(https://youtu.be/FsRHdL_r0pE)
前まで参考にしていたサイト:不明
プログラミング言語習得方針:ゲーム開発が普通のプログラミングで普通のIDEで出来るようになれれば良い。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2018/09/25 09:45
2018/09/25 14:10
退会済みユーザー
2018/09/26 09:07
2018/09/26 16:29
退会済みユーザー
2018/09/27 09:05