ユーザインタフェース 12章 描画
- 12.1. java.awt.Graphics
- 12.2. 再描画
- 12.3. イメージの描画
12.3. イメージの描画
「JLabel」クラスなどでは、簡単にイメージを貼り付ける事ができました。では任意の場所にイメージを描画するにはどのようにすればよいでしょうか?「Graphics」クラスの「drawImage」メソッドを使用します。このメソッドは引数として画像を示す「Image」オブジェクト、および画像の情報を管理する「ImageObserver」オブジェクトが必要です。後者は画像を描画するコンポーネントのオブジェクトを指定すればよいです。残りの「Image」オブジェクトの取得には色々な方法がありますが、「javax.swing.ImageIcon」クラスの「getImage」メソッドを使用するのが簡単でしょう。プログラムは以下のような感じになります。
ImageIcon icon=new ImageIcon("4dd.gif"); g.drawImage(icon.getImage(),0,0,this);
「Image」オブジェクトの取得には、他にも「java.awt.Toolkit」や「java.awt.MediaTracker」クラスを利用する方法もあるが、この方法が最も簡単です。
(実習課題3)
以下のプログラムを作成しなさい。
- ウィンドウに含まれるコンポーネントはパネルのみ。
- パネルには最初何も表示されないが、マウスのボタンを押すとその位置にイメージを表示する事。
- マウスをドラッグしていくと、イメージはマウスに合わせて移動するようにする事。
- ボタンを離すとイメージは消える事。
- (ヒント)「MouseMotionListener」を利用する。