タイトルのようなアプレットを作りたいのですがなぜか実行されません。どこがおかしいのでしょうか?
(文字数制限のため省略)
{
private JButton bt[] = new JButton[9];
private JPanel pn[] = new JPanel[2];
int i;
public void init()
{
Container cnt = getContentPane();
for(i=0; i<9; i++){
add(bt[i] = new JButton(""));
}
pn[0] = new JPanel();
pn[1] = new JPanel();
//上パネルに置くボタン6つ
bt[0].setSize(80,80);
bt[0].setLocation(0,0);
bt[1].setSize(80,80);
bt[1].setLocation(80,0);
bt[2].setSize(80,80);
bt[2].setLocation(160,0);
bt[3].setSize(80,80);
bt[3].setLocation(0,80);
bt[4].setSize(80,80);
bt[4].setLocation(80,80);
bt[5].setSize(80,80);
bt[5].setLocation(160,80);
//下パネルに置くボタン3つ
bt[6].setSize(80,80);
bt[6].setLocation(0,200);
bt[7].setSize(80,80);
bt[7].setLocation(80,200);
bt[8].setSize(80,80);
bt[8].setLocation(160,200);
//上パネルと下パネルの作成
pn[0].setLocation(0,0);
pn[1].setLocation(0,200);
//ボタンをパネルに付ける
pn[0].add(bt[0]);
pn[0].add(bt[1]);
pn[0].add(bt[2]);
pn[0].add(bt[3]);
pn[0].add(bt[4]);
pn[0].add(bt[5]);
pn[1].add(bt[6]);
pn[1].add(bt[7]);
pn[1].add(bt[8]);
//コンテナへ追加
cnt.add(pn[0]);
cnt.add(pn[1]);
}
}
座標を指定してボタンを設置する方法にしたいと思っています。
ちなみに完成図はこのような感じにしたいです。
↓
□□□
□□□
□□□
No.1ベストアンサー
- 回答日時:
おかしなとこをいくつか
add(bt[i] = new JButton(""));
→ ボタンはパネルに追加するのでここでは初期化のみ
→ bt[i] = new JButton("");
btn[6]~btn[8]の位置
→ パネル2に追加するので縦位置は0で
→ bt[6].setLocation(0,0);bt[7].setLocation(80,0);
追加処理
→ 各パネル、ボタンを絶対位置にするのでレイアウトなしに
→ cnt.setLayout( null );pn[0].setLayout( null );pn[1].setLayout( null );
パネルのサイズも指定する
→pn[0].setSize( 240, 160 );pn[1].setSize( 240, 80 );
この回答への補足
ご返答ありがとうございます。
asahina02様の通りやってみても、上のパネルだけ表示されて下のパネルは表示されませんでした。
あと、なぜかパソコンを代えて実行すると、なぜか座標とサイズが無視されて2×3のはずが、1段目にボタン4つ、2段目にボタン2つでしかもボタンサイズが違います。パソコンによって実行結果が変わるのは何が原因なのでしょうか?
これと似ている症状で、コマンドプロンプトで「appletviewer (htmlファイル)」でアプレットビューアで実行するときと、htmlファイルのアイコンをダブルクリックして実行するときでは実行結果が違います。どうなっているのでしょうか?
No.2
- 回答日時:
> asahina02様の通りやってみても、上のパネルだけ表示されて下のパネルは表示されませんでした。
単にアプレットの表示サイズが小さいってことないですか?
元のソースから考えるに幅240の縦280が最低限必要っぽいですが
後の部分はスイマセン。ちと分かりません。
少なくとも私の環境ではappletviewerでやってもローカルでHTML表示しても、ちゃんとサーバー立ててHTML表示しても結果は変わらんです
ご返答ありがとうございます。
アプレットの表示サイズも問題ないです。しかし今日まで色々自分で調べて自己解決しました。いくつか単純なミスが見つかった事と、プログラム以前の他の設定などに誤りがありこのような結果になりました。どうもお騒がせしましたm(_ _)m
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
- ・ゆるやかでぃべーと タイムマシンを破壊すべきか。
- ・歩いた自慢大会
- ・許せない心理テスト
- ・字面がカッコいい英単語
- ・これ何て呼びますか Part2
- ・人生で一番思い出に残ってる靴
- ・ゆるやかでぃべーと すべての高校生はアルバイトをするべきだ。
- ・初めて自分の家と他人の家が違う、と意識した時
- ・単二電池
- ・チョコミントアイス
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VB.NETでフォーム上にExcelのよ...
-
VB6のツールボックスへのコンポ...
-
VBSでCDトレイのオープン/ク...
-
[delphi] 変数を利用してコンポ...
-
tableView reloadDataが出来ない
-
ファイル保存先のダイアログが...
-
「タイプ初期化子が例外をスロ...
-
エクセルVBAで、条件に一致する...
-
VBA 同じ名前のオブジェクトを...
-
オブジェクト参照がオブジェク...
-
エクセルVBA 画像を貼り付ける...
-
VB.netでメソッドからコントロ...
-
VB.NET getとsetの概念がわかり...
-
配列の重複する値とその個数を...
-
数学の計算問題。 3年間同じク...
-
インスタンス参照でアクセスで...
-
サーブレットコンテキストの意...
-
オートシェイプの位置がずれる...
-
Androidで画像の中で指定した範...
-
private static という変数の修飾
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VB.NETでフォーム上にExcelのよ...
-
VB.NETでMSComm が追加できず?
-
requestFocusについて
-
Visual Basic 2010を使ってRS-2...
-
JScrollPane上のJTableの再描画
-
ファイル保存先のダイアログが...
-
delphi stringgrid
-
JButton配列でのイベント処理
-
VB6のツールボックスへのコンポ...
-
VBでCPUの使用率を取得できます...
-
アクティブなTextFiel...
-
[delphi] 変数を利用してコンポ...
-
ツールボックスのような折りたたみ
-
JOptionPaneのダイアログパネル...
-
C#で設定時刻到来時にイベント...
-
子パネルから親パネルのコント...
-
Buttonの色
-
コントロールの表示・非表示
-
GUI画面でsetBounds()で作成し...
-
java 電卓 平方根
おすすめ情報