0

メモリーカードゲームを作ってみた...

JFrameウィンドウRANDOMに(ラベル)を追加する方法はありますか?

私は FlowLayout を使用しており、次のものがあります。

add(l1);add(l2);add(l3);add(l4); 

私が次のように書くと:

add(l3);add(l4);add(l1);add(l2);

一連の画像を変更する..それが私が望むものです...毎回異なる位置にラベルを追加します..

そうでない場合、ラベルに画像を別の行 (ランダム) で配置する方法はありますか? 画像を配置する方法は次のとおりです。

imageOfLabel1 = imageOfLabel2 = "im1.jpg"; 
imageOfLabel3 = imageOfLabel4 = "im2.jpg"; 

私の英語でごめんなさい!: )

4

1 に答える 1

1

l1、l2、l3、l4 の型がわかりません。それらがすべて JLabel インスタンスであるとします。次に、配列を作成し、シャッフルしてから追加できます。

JLabel[] ls = new JLabel[] {l1, l2, l3, l4};

// shuffle
Random rand = new Random();
for (int i = 0; i < ls.length; i++) {
    int randIndex = rand.nextInt(ls.length);
    JLabel temp = ls[i];
    ls[i] = ls[randIndex];
    ls[randIndex] = temp;
}

for (int i = 0; i < ls.length; i++) add(ls[i]);
于 2012-12-14T21:31:13.873 に答える