• 締切済み

Java画像表示など

5種類のGIF画像(10×10 *ピクセル)を、ランダムに400×300のスペースに敷き詰めたいんですけど、どうやったらいいでしょうか? ちなみにちらつきをなくすためにダブルバッファリングを使い、かるく画像表示が1000を超えてしまうので配列やfor文も使いたいのですが・・・。 言葉だとわかりにくいので、できればソースで教えてください><

みんなの回答

  • hrm_mmm
  • ベストアンサー率63% (292/459)
回答No.2

>言葉だとわかりにくいので あなたの質問の方が意味がわかりにくいですけど。 とりあえず、paint部分だけ提示してみます。 大枠作成(appletとかframeとか)はいろいろ作成法があるのでお好きなように。 int imax = 8; // 読み込み画像数 Image moto[]; // 読み込み画像データ格納 格納コードも省略 Image off_img; Graphics g_img; int mwidth = 400; // 描画領域サイズ int mheight = 300; int mw = 10; // 読み込みimage size 適宜取得 int mh = 10; boolean draw_flag=true; // 起動時のみ描画するためのflag public void paint(Graphics g) { if( draw_flag ){ if (off_img != null) off_img = null; if (g_img != null) g_img.dispose(); off_img = createImage(mwidth,mheight); // 新規作成 g_img = off_img.getGraphics(); int wmax = mwidth / mw; int hmax = mheight/ mh; for(int i=0; i<hmax; i++){ for(int j=0; j<wmax; j++){ int k= (int) ( imax * Math.random()); if(k>=imax){k=imax-1;} g_img.drawImage(moto[k],j*mw,i*mh,mw,mh,this); } } draw_flag = false; } g.drawImage(off_img,0,0,this); // 実画面描画 } // paint end

全文を見る
すると、全ての回答が全文表示されます。
  • kacchann
  • ベストアンサー率58% (347/594)
回答No.1

あなたが書いたソースコード 載せましょう

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • JScrollPaneで、表示がおかしくなります

    いつも、お世話になっております。 JScrollPaneを使って、大きなサイズのJpanelを表示しようとしていますが、Jpanelのheightが770ピクセルを超えたあたりから、上で表示したものが重なって表示されてしまったりして、正常に表示できなくなってしまい困っています。 Jpanelでは文字や線などを描画して表示しているので、ダブルバッファリングしていないのかと考え、調べてみましたが、ダブルバッファは行っていました。 回避する方法等をご存知でしたら、教えていただけないでしょうか。 宜しくお願い致します。

    • ベストアンサー
    • Java
  • C++で画像を被らないようにランダムに表示

    初めまして。 現在、C++を勉強しているものです。 配列に収納された画像をランダムにpictureboxに表示させたいです。 しかし、ダブらないようにしたいです。 1枚だけならどこかでソースが載っていたのでそれをコピーしたらいいだけだと思うので問題はないのですが、3枚をランダム表示させ、なおかつ同じ物が表示しないようにしたいのです。 1枚目の画像が決定した後、それ以外の画像からランダムに選択。さらに1枚目・2枚目の画像が決定したらそれ以外の画像からランダムに選択。 初心者の案としては (1)重複なしの乱数を生成 (2)生成された数を配列と参照する (3)参照された画像をpictureboxに表示する こんな事が出来ますか? また、どうしたらいいのでしょうか? よろしくお願いします。

  • javascriptを使って画像のランダム表示とロールオーバーをセット

    javascriptを使って画像のランダム表示とロールオーバーをセットで行いたいのですが上手くいきません… javascript超初心者です…。画像をランダムに表示し、さらにそのランダムに表示された画像をそれぞれ違った画像にロールオーバーさせたいのですが上手くいきません。 一応以下のように書いて試しているのですが、ランダム表示はするのですが、ロールオーバーはエラーがでてしまい画像が切り替わりません。どのようにすれば上手く出来るか、知恵を貸してください。宜しくお願いします。 <html> <body> <SCRIPT language="JavaScript"> <!-- // ランダムに画像を表示する img = new Array(); onMouseover = new Array(); onMouseout = new Array(); // 画像のアドレス(数字はジャンプ先のアドレスと対応) img[0] = "top1.gif"; img[1] = "top2.gif"; img[2] = "top3.gif"; img[3] = "top4.gif"; img[4] = "top6.gif"; // マウスオーバー onMouseover[0] = "top1roll.gif"; onMouseover[1] = "top2roll.gif"; onMouseover[2] = "top3roll.gif"; onMouseover[3] = "top4roll.gif"; onMouseover[4] = "top6roll.gif"; // マウスアウト onMouseout[0] = "top1.gif"; onMouseout[1] = "top2.gif"; onMouseout[2] = "top3.gif"; onMouseout[3] = "top4.gif"; onMouseout[4] = "top6.gif"; n = Math.floor(Math.random()*5); document.write("<img src='"+img[n]+"' border='0' onMouseover='"+onMouseover[n]+"' onMouseout='"+onMouseout[n]+"'>"); //--> </SCRIPT> </body> </html> 補足 ●ランダム用の画像が1~5まで、ロールオーバー用の画像がa~eまであるとして、ランダム表示によって1が表示されたらロールオーバーで表示される画像はaのみ、マウスアウトしたら1に戻る、というようにしたいです。同じように2-b,3-c…というように対応させたいです。 ●ページ読み込み時のみランダム用画像をランダム表示させ、後は上記のような流れにしたいです。 長くなりましたが、どなたか回答お願いいたします。

  • 画像ランダム表示、しかしダブらないように…

    トップページの画像をランダム表示させたいです。 1枚だけならどこかでソースが載っていたのでそれをコピーしたらいいだけだと思うので問題はないのですが、3枚をランダム表示させ、なおかつ同じ物が表示しないようにしたいのです。 もちろん、画像保存フォルダは1つです。また、ファイルは順次増やして行きたいです。 1枚目の画像が決定した後、それ以外の画像からランダムに選択。さらに1枚目・2枚目の画像が決定したらそれ以外の画像からランダムに選択。 こんな事が出来ますか? また、どうしたらいいのでしょうか? よろしくお願いします。

  • 各フォルダから1枚ずつ画像をランダム表示

    画像のランダム表示なのですが、 index.html ├[001]…0.gif~10.gif ├[002]…0.gif~9.gif └[003]…0.gif~20.gif 001~003はそれぞれの画像が入ったフォルダです。ファイル名は0から順にナンバリングしてます。 index.html内の各所にそれぞれのフォルダからの画像をランダムで表示したいです。つまり 【001内の画像】【002内の画像】【003内の画像】 こんな感じです。(わかりにくいですねスミマセン) 多分ひとつのフォルダごとにそれぞれコードを記述すればできるのはわかるのですが、どうせ同じことをさせるコードなら一つにまとめれるのではないかと考えました。 いろいろ考えたのですが *フォルダごとの画像数が違う場合、全ての画像を拾うためにはどうすればいいか *フォルダ名を引数?値?にしてjsに渡してやる??? 行き詰まりましたw これからフォルダが増えればまたコードが増えるというのは避けたいので、すっきりとまとまるコードがないものか考え中なのですが・・・どうにもこうにもうまく作れません(汗) 以上、参考となるサイトでも結構です。アドバイスよろしくお願い致します。

  • 画像がIEでは表示されるが、NNでは表示されない。

    HPを作成しているのですが、 InternetExplorerでは、GIF画像が表示されるのですが、 Netscapeでは、表示されません。 Netscapeにその画像をドラッグすると、表示されます。 困ったことに、同じGIF画像でも、 Netscapeで表示される画像と、されない画像があります。 自分なりに調べてみたのですが、解決しませんでした。 何かソースを間違ってるのでしょうか?

    • ベストアンサー
    • HTML
  • 画像をランダムで表示させたい

    自分のホームページで画像を数種類をランダムで表示させたいです 無料HPなのでCGIは使えません HP開いたときや、HP開いたままで更新ボタンを押したときに ランダムで画像を何種類か表示させたいです

    • ベストアンサー
    • HTML
  • 画像表示について。

    現在SDKにてBMPやRAWなどの画像表示ソフトを作成している段階です。 そして、一通り作成することができました。 ここで質問に答えてくださった皆様に感謝します。 新たに些細な問題が出てきてしまったので質問します。 作成したソフトはMDI型のソフトであり、その構成はフレーム、クライアント、ドキュメントウィンドウといった構成になっています。 もちろん読み込んだ画像はドキュメントウィンドウに表示をするのですが、このドキュメントウィンドウのサイズをマウスを使って変更した場合、画像にちらつきが生じてしまいます。 原因はプログラム上 WM_PAINT メッセージがきた場合に描画をおこなうことに他ならないのですが、解決する手段はないでしょうか? 例えばダブルバッファリングなどの手段があればよいのですが・・・

  • 画像の表示方法について

    ページが表示されるたびに画像を変更する方法が 『5・6年生にもわかるやさしいJavaScript』に紹介されていました。 URLはhttp://www.sky.sannet.ne.jp/masapine/java_top.htmlです。 これは、表示されるごとにランダムで変更する形式なのですが、 これを順番通りに画像を変更することは出来るのでしょうか。 具体的には、 <SCRIPT LANGUAGE="JavaScript"> <!-- simg=new Array(5); simg[0]="○○○.gif"; simg[1]="●●●.gif"; simg[2]="△△△.gif"; simg[3]="▲▲▲.gif"; simg[4]="□□□.gif"; Myimg=Math.floor(5*Math.random()); document.write("<center><img src='"+simg[Myimg]+"'></center>"); //--> </SCRIPT> の、Myimg=Math.floor(5*Math.random());の部分で 表示方法を決めていると思いました。 simg[ ]の数字の順番通りに表示するには、 どのようにすればいいのでしょうか。 初心者なので詳しいことが分かりませんが、 よろしくお願い致します。 また、この形式通りでなくても構いません。

  • Tu-Ka TT11 画像が表示されません。

    こんにちは。 先日、TT11を購入しました。 待ち受け画像を自作して、パソコンからその画像をメールに添付し ezwebの自分のアドレスに送ったのですが、上手くいきませんでした。 HPスペースに画像をアップしてそこから取ってくることもできません でした。 gif、pngファイルでは受信ができず、jpgファイルでは受信はできる のですが、画像が表示されません。 73×73ピクセルで、ファイルサイズは2Kb程度にしているのですが、 何か画像に不備があるのでしょうか。 お分かりの方いましたら、回答よろしくお願いいたします。