0

52 枚のカードをロードし、(乱数ジェネレーターを使用して) シャッフルし、デッキの上位 10 枚のカードを 5 枚ずつ 2 行で表示するアプレットを作成しようとしています。カードの 52 枚の画像を含む HTML ファイルがありますが、個々の画像を読み込まずに画像を読み込む方法はありますか。Web から画像を読み込むにはどうすればよいでしょうか。

4

2 に答える 2

2

..個々の画像をロードせずに画像をロードする方法はありますか

それらを 1 つの巨大なイメージに入れ、実行時にスライスします。この回答には例があります。

Google 画像で「playing+card」を検索すると、ヒットの最初のページに 2 つ以上のタイル セットがある可能性があります。

しかし、さらに速くロードするには:

  1. カードの背景
  2. ImageまたはShape各スーツシンボルの
  3. ImageFont文字と数字のまたは。

次に、起動時にそれらを組み合わせて、52 枚のカードのそれぞれを形成します。

カードには共通の「裏面」も必要になるようです。

どのようにウェブから画像を読み込みますか?

URLで。

いくつかの代替案:

  1. Applet.getImage(URL)
  2. Toolkit.getImage(URL)
  3. または、同期的にロードされたBufferedImage使用の場合ImageIO.read(URL)

最初の 2 つのメソッドは非同期であり、ImageObserver.

Java Web Startを使用して起動されたアプリケーションとしてこれを行うことを検討してください。アプレットの使用を続行する場合は、アプレット情報のリンクを参照してください。ページ

于 2012-09-30T22:44:42.837 に答える
0

これを試して。

Image[] cards = new Image[52]

private void loadImages(){
    for (int i=0; i<cards.length; i++){
        URL imgUrl = getClass().getResource("image"+(i+1));
        cards[i] = getImage(imgUrl);
    }
}

お役に立てれば

于 2012-09-30T23:55:26.683 に答える