// 画像の拡大縮小 [Car1.java](JDK 1.0.2) import java.applet.Applet; import java.awt.*; //!import java.awt.event.*; // JDK 1.1 //!public class Car1 extends Applet //! implements AdjustmentListener { // JDK 1.1 public class Car1 extends Applet { //! double scale=1.0; // スケールの初期値 int w,h; // イメージ縦と横の長さ Image img; Scrollbar scr; // Scrollbar public void init() { // アプレットロード時の初期化メソッド setLayout(new BorderLayout()); scr = new Scrollbar(Scrollbar.HORIZONTAL,100,10,50,210); add("South",scr); //! add(scr,"South"); // Scrollbar MediaTracker mediaT= new MediaTracker(this); //(b) img=getImage(getDocumentBase(),"car.gif"); //(a) 読み込み mediaT.addImage(img,0); //(b) try{ //(b) mediaT.waitForAll(); //(b) } catch ( InterruptedException e) { } //(b) w=img.getWidth(this); //(c) 画像の横の大きさ h=img.getHeight(this); //(c) 画像の縦の大きさ //! scr.addAdjustmentListener(this); // JDK 1.1 } //end init //!//========== JDK 1.1 イベント(スクロールバー) ============ //!public void adjustmentValueChanged(AdjustmentEvent e) { //! repaint(); //!} //end adjustmentValueChanged //========= JDK 1.0.2 イベント処理(スクロールバー) ========= public boolean handleEvent(Event e) { //! イベントの処理 repaint(); //! return true; //! } //end handleEvent //! //==================== paintメソッド ===================== public void paint(Graphics g) { // イメージの出力 scale=scr.getValue()/100.0; //(d) スケールの変更 g.drawImage(img,0,30,(int)(w*scale), (int)(h*scale),this); //(e) 画像の出力 } //end paint } // Car1