- ベストアンサー
JAVAアプレットのクイズのレイアウト
- JAVAのアプレットを用いてクイズを作成しているのですが、問題を1問ごとに回答した後に「次の問題へ」というボタンで画面を切り替えたいです。また、5問終わったら「もう一度」というボタンで再度始められるようにしたいです。
- 質問文章では、JAVAのアプレットを使用してクイズを作成し、問題を1問ずつ回答して次の問題に進む方法と、5問終了後に再度始められる方法についての方法を教えて欲しいという内容です。
- アプレットを使用したクイズで、1問ずつ回答して次の問題に進み、5問終了後に再度始められるようにする方法について教えてください。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
add(BT = new Button("…")); だと、Appletに追加してません?パネルに追加するのではないですか? パネルを削除してとありますが、 パネルを削除した後に違うパネルを追加するのを忘れてませんか? あと、いちいちパネルを削除したりするのではなく、 CardLayout という切り替えられるレイアウトマネージャがありますので、 そちらを使うのも一考かもしれません。
その他の回答 (3)
- pcbeginner
- ベストアンサー率46% (261/560)
ごめんなさい。追加してました。
お礼
ご回答ありがとうございます。 removeとaddを使っていったら、解決しました。
- pcbeginner
- ベストアンサー率46% (261/560)
それはボタンをnewしただけで、 追加していないからでは?
お礼
ご回答ありがとうございます。 removeとaddを使っていったら、解決しました。
- pcbeginner
- ベストアンサー率46% (261/560)
>どのようにしたら良いでしょうか。 って言われても >これを1問ごとに回答した後に「次の問題へ」というボタンだけ画面に切り替わり、そのボタンを押すと次の問題が出てくるようにしたいのですが、 って言うんだから、↑のようにしたらいいと思いますよ。 いきなりどうするかを聞くんじゃなくて、 自分なりにやってから、○○なると思ったけど、××になりました。 △△と□□は試しましたが、◎◎と●●になりました。 って感じで質問しましょう。 やりたいけど、できない、どうすればいい? じゃいつまでたっても自分の作りたいものが作れませんよ。
お礼
質問の仕方が悪くてすいません。 自分なりに試したのはinitメソッドで指定したパネルをremoveで消し、新しくボタンを設定し、if文でボタンが押されたときに、setQuestionメソッドを呼び出す、というメソッドを作り、そのメソッドを利用して解決しようと思いました。 実際にはこのような感じです。 private void AA(){ remove(PL); remove(QL); remove(P1); remove(P2); remove(BT); add(BT = new Button("次の問題へ")); } しかし、このメソッドを呼び出しても、「次の問題へ」というボタンが出てきませんでした・・。 どうか教えてもらえないでしょうか。
お礼
ご回答ありがとうございます。 またお礼が遅くなってしまいすいません。 パネルに新しいボタンとして追加したいです。 私の考えとして、一度initメソッドで作ったパネルをすべてなくして、新しくパネルを追加する操作を行いたいのですが、前の書いた操作では間違っているのでしょうか。 また質問してしまいすいません。