NetBeansを使ってアプレットを作成する方法

このQ&Aのポイント
  • NetBeansを使用してアプレットを作成する手順を解説します。
  • アプレットにはペイントで作った背景画像やマウスイベントを追加する方法について説明します。
  • NetBeans初心者でもわかるように、詳しい手順と共に解説します。
回答を見る
  • ベストアンサー

NetBeansを使ってアプレットを作成しています。

NetBeansを使ってアプレットを作成しています。 作成したい内容は、 ・ペイントで作った「牧場」の絵を背景にする ・マウスを動かすと「ひよこの足跡」が表示される ・マウスをクリックすると「ひよこ」が表示される ・範囲を指定して、中央周辺でクリックすると「にわとり」が表示される ・「ひよこ」や「にわとり」の出現時に鳴き声も鳴るようにする (※「ひよこ」や「にわとり」の絵もペイントで作成します) どのイベントから作成していけばよいのやら… NetBeas初心者の私にはとても難しいです。 NetBeansに詳しい方がいましたら、 ご協力いただけると嬉しいです。 お願いします。

  • Java
  • 回答数1
  • ありがとう数1

質問者が選んだベストアンサー

  • ベストアンサー
  • tom11
  • ベストアンサー率53% (134/251)
回答No.1

森の背景の表示 マウスを動かすと、足跡を表示 マウスをクリックすると、狼の表示と、鳴き声 アプレットじゃなく、Jframeで、作成 netbeansで作っています public class draw_moue_test extends javax.swing.JFrame { int x=0,y=10,w=0,h=0; JComponent cp; int nn=100; int [] px = new int [nn]; int [] py = new int [nn]; int count = 1,checkc =0; Image im,imwolf,haikei; URL wav; File f; AudioClip ac; boolean display = false; /** Creates new form draw_moue_test */ public draw_moue_test() { im = Toolkit.getDefaultToolkit().getImage("footprint.gif"); imwolf=Toolkit.getDefaultToolkit().getImage("wolf.gif"); haikei=Toolkit.getDefaultToolkit().getImage("forest.gif"); f = new File("wolf.wav"); try { wav = f.toURI().toURL(); } catch (MalformedURLException ex) { Logger.getLogger(draw_moue_test.class.getName()).log(Level.SEVERE, null, ex); } ac = Applet.newAudioClip(wav); initComponents(); w=getWidth(); h=getHeight(); cp = new JComponent() { @Override protected void paintComponent(Graphics g) { super.paintComponent(g); g.drawImage(haikei, 0, 0, w, h, this); for(int i=0;i<nn;i=i+10){ g.drawImage(im, px[i], py[i], this); } if (display){ g.drawImage(imwolf, x, y, this); } } }; cp.setBounds(0, 0, w, h); getContentPane().add(cp); } /** This method is called from within the constructor to * initialize the form. * WARNING: Do NOT modify this code. The content of this method is * always regenerated by the Form Editor. */ @SuppressWarnings("unchecked") // <editor-fold defaultstate="collapsed" desc="Generated Code"> private void initComponents() { setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE); addMouseListener(new java.awt.event.MouseAdapter() { public void mouseClicked(java.awt.event.MouseEvent evt) { formMouseClicked(evt); } }); addComponentListener(new java.awt.event.ComponentAdapter() { public void componentResized(java.awt.event.ComponentEvent evt) { formComponentResized(evt); } }); addMouseMotionListener(new java.awt.event.MouseMotionAdapter() { public void mouseMoved(java.awt.event.MouseEvent evt) { formMouseMoved(evt); } }); javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane()); getContentPane().setLayout(layout); layout.setHorizontalGroup( layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGap(0, 600, Short.MAX_VALUE) ); layout.setVerticalGroup( layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGap(0, 600, Short.MAX_VALUE) ); pack(); }// </editor-fold> private void formMouseMoved(java.awt.event.MouseEvent evt) { px[count%nn]=evt.getX(); py[count%nn]=evt.getY(); count++; cp.repaint(); // TODO add your handling code here: } private void formMouseClicked(java.awt.event.MouseEvent evt) { checkc++; if (checkc%2 == 1) { display=true; ac.play(); }else{ display=false; } x=evt.getX(); y=evt.getY(); cp.repaint(); // TODO add your handling code here: } private void formComponentResized(java.awt.event.ComponentEvent evt) { w=getWidth(); h=getHeight(); cp.setBounds(0, 0, w, h); cp.repaint(); // TODO add your handling code here: } /** * @param args the command line arguments */ public static void main(String args[]) { java.awt.EventQueue.invokeLater(new Runnable() { public void run() { new draw_moue_test().setVisible(true); } }); } // Variables declaration - do not modify // End of variables declaration }

hiroro1085
質問者

お礼

アプレットとJframeって何が違うんですか??

関連するQ&A

  • netbeans 6.0.1について、新規作成

    mac book pro os 10.58をつかっています。 起動直後に新規プロジェクト作成をしようとしましたが、クラス名などを記入して「完了」を押しますが、(左下に出てくるゲージのようなものが)25パーセント以上進まず止まってしまいます。これ以上先に進めるにはどのようにしたらよいのでしょうか? また最悪アインストーラーをつかって消して再インストールという事も考えているのですが、 1、Finder のアプリケーションで NetBeans を探します 2、Ctrol+クリックでメニューを開き「パッケージの内容を表示」を選択します。新しいウィンドウが開き uninstaller があります。 3、uninstaller アイコンをダブルクリックします という説明を見つけたのですが、「内容」の中にアインストーラーがありません。 ほかにどのような消し方があるのでしょうか? よろしくお願い致します。

    • ベストアンサー
    • Java
  • アプレットがサーバにのっけると、動かない。

    java初心者です。 あるアプレットを作成(クリックすると画像が変わっていく)したのですが、自分のPC上で、ローカルでブラウザを起動させると正常にアプレットが動くのですが、それ(フォルダ全部)をまるごとサーバにのっけるとなぜかアプレットが正常に動作しません。 クリックしても画像が変わりません…。 ブラウザの下の表示には、アプレット Main Startedとなっています。 画像も最初の画像は問題なく表示されています。ただクリックしても次の画像に移りません。 よろしくお願いします。

    • ベストアンサー
    • Java
  • アプレットのPopupMenuをコードだけで消す方法

    こんにちわ。yukimura1024です。 アプレットの、ある範囲にマウスカーソルが入ったらPopupMenuを表示する。その範囲からマウスカーソルが出たらPopupMenuを消す。という処理を作成しています。表示のほうはできますが、消すほうがうまくいきません。(PopupMenuではなくLabelならsetVisibleを使って消すことができました) どこかをクリックするかESCキーを押せばPopupMenuは消えるのですが、これをマウスの移動だけで行いたいのです。 いろいろと試しましたがなかなかうまくいきません・・・ ご存知の方、教えていたたければ幸いです。 よろしくお願い致します。

    • ベストアンサー
    • Java
  • 「至急」 教えてください。メモ帳で作成していただけませんか?

    Javaでサウンドとマウス入力を使用したアプレットの作成してデモのソースを教えてください。 例 ImageMove.Javaを作成したいのですが、追加として・マウスでクリックした位置にイメージを動かす・マウスのクリックに対応したイベントはmouseClicked・イメージの再描画はrepaint();・アプレット名は”ImageMove.Class”でImagemove.htmlファイルから呼び出されると仮定して作成。手元の環境は以下のファイル(アプレットと同じデェレクトリ)にダウンロードしてあります。 ・audioimage.htmlで確認・duke.gif・ringin.wav・rinbout.wavを取り入れます。解かりますか?

  • プログラミングの問題が分かりません。

    javaのプログラミングで分からない問題があり困っています。 お分かりになる方がいましたら教えてくださると助かります。 ↓問題です マウスイベントを利用した以下のアプレットを作れ. ▽アプレット領域は400×400 ▽マウスがアプレット領域に入ってきたら(MouseEntered),メッセージを表示 「こんにちは,宝探しするよ.好きな場所をクリックしてね」 ▽マウスがクリックされたら(MouseClicked),イベント処理  宝の場所(50×50)を適当に設置  その場所をクリックしたら,あたりでメッセージと宝箱を表示 「あたり! 宝を見つけたよ」&「宝箱の絵」  それ以外の場所をクリックしたら,はずれでメッセージを表示 「はずれ!」 ▽マウスがアプレット領域を出たら(MouseExited),メッセージを表示 「さよなら.また来てね」 よろしくお願いします。

  • javaアプレットでプログラムを作りたいと思います。

    javaアプレットでプログラムを作りたいと思います。 丸と三角形をくっつけて添付データのようなキャラクタを作ります。 動きとしてはキャラクタごとゆっくり回転させながらマウスにリンクしたキャラクタを自由自在に動かしたいです。 そして、左クリックするとビシッと止まって座標を表示させたいです。 いろいろ調べてたら凄く似てる質問がありました。 http://okwave.jp/qa/q6167264.html 一応よく読んだのですが、いまいち理解できませんでした。 細かいことは上の参考ページと同じです・・・かね? たぶん伝えられていないと思いますので少しずつ補足したいと思います。 現在、三角形をマウスにリンクすら出来てません(´;ω;`)ブワッ

  • アプレットでマウスイベントが出ない

    クリックしても反応しません。 また、マウスイベントが発生したときに飛ぶメソッドにSystem.out.printlnを入れるとException in thread "AWT-EventQueue-0" java.lang.NullPointerException: component argument pDataが出ることがあります。 import java.applet.Applet; import java.awt.Graphics; import java.awt.event.MouseListener; import java.awt.event.MouseEvent; public class NewJApplet extends javax.swing.JApplet implements MouseListener{ int x = 10; int y = 10; public void init() { x = 50; y = 50; } public void mouseClicked(MouseEvent e) { } public void mouseEntered(MouseEvent e) { } public void mouseExited(MouseEvent e) { } public void mousePressed( MouseEvent e ){ x = e.getX(); // マウスがクリックされた位置のx座標を取得する y = e.getY(); // マウスがクリックされた位置のy座標を取得する repaint(); // アプレットの再描画を指示する } public void mouseReleased(MouseEvent e) { } public void paint(Graphics g) { g.fillOval(x,y,10,10); } } 使ってるのは jre1.6.0_01 NetBeans 5.5です

    • ベストアンサー
    • Java
  • アプレットのコード変更後の反映ができない

    JAVAの初心者です。困っております、お助けくださいm(__)m JAVAアプレットを作成しております。 IE上で”Hello!”と表示するだけです。 一回目は正常なのですが、 二回目は”Good Morning!”と表示するように 変更して、再度IEで表示してみると ”Hello!”のままなのです。 classファイルは更新されています。 メモリに残っているんでしょうか・・ IEの履歴や一時ファイルも削除してみましたが だめでした。 環境はWinXPSP2、NetBeans IDE 4.1、 JAVA 1.5.0_04 です。 コードは以下の通りです。 <Lesson1.java> import java.applet.Applet; import java.awt.*; public class Lesson1 extends Applet{ public void paint(Graphics g){ g.drawString("Hello!", 10,10); } } <Lesson1.html> <HTML> <BODY> これはテスト <applet code="Lesson1.class"></applet> </BODY> </HTML> よろしくお願いします。

    • ベストアンサー
    • Java
  • Javaアプレットで描画の中断がしたい

    Java初心者です。学校の課題で数学シュミレーションの結果を Javaアプレットで表示するプログラムを作成しています。 この課題のJavaアプレットでは 複素平面のシュミレーション(計算結果を色のグラデーションで表示する)なのですが、 チョイスやボタン、マウスクリックなどによって、 初期条件や、描画方式、表示範囲などを指定することができます。 とりあえず、シュミレーション結果の描画は 試行錯誤の結果表示ができるようになりました。 paint(Graphics g)メソッドで数値計算、及び描画をしています。 (ちなみに余談かもしれませんがダブルバッファリングをしていて、 描画内容をImageとして書き込んでおいて描画するというかたちです。) 「計算途中(計算には結構時間がかかる)に 新たにボタンなどで指定条件が変更された場合、 現在の描画を中断して次の計算と描画を開始できるように プログラムを改良しなさい」というのが今回の課題です。 つまり、「プログラム的にはpaintメソッドが実行されている途中に 特定のイベントが発生したらpaintメソッドを中断し、 もういちど呼びなおしなさい」ということかと思われます。 スレッドを作り、そのスレッドを中断するなども考えました。 インターネットで検索もしてみましたが、 なかなか情報を見つけられず困っています。 学生が作るプログラムなのでそんなに難しいことではないのだと思うのですが 解決できませんでした。 どうぞよろしくお願いします。

  • 絵が描けるゲーム知りませんか?

    マリオペイントやパソコンでできるような自分で絵を作成できるゲームってありますか? 自分はDSライトとPSPとPS3を所持しています。 あと話が変わりますがPSPやPS3に牧場物語はないのでしょうか?

専門家に質問してみよう