Head First Java 第2版
頭とからだで覚えるJavaの基本
(オライリージャパン)
Kathy Sierra (著) Bert Bates (著) 島田 秋雄(監修)
神戸 博之 (監修) 高坂 一城 (監修) 夏目 大 (翻訳)
開発環境
- OS X Mavericks - Apple(OS)
 - Emacs (CUI)、BBEdit - Bare Bones Software, Inc. (GUI) (Text Editor)
 - Java (プログラミング言語)
 - javac (コンパイラ)
 - java (application launcher)
 
Head First Java 第2版 ―頭とからだで覚えるJavaの基本(Kathy Sierra (著)、Bert Bates (著)、島田 秋雄 (監修)、神戸 博之 (監修)、高坂 一城 (監修)、夏目 大 (翻訳)、オライリージャパン)の12章(GUIの基礎)、自分で考えてみよう(p.383)を解いてみる。
自分で考えてみよう(p.383)
コード(BBEdit, Emacs)
TestAnimation.java
import javax.swing.*;
import java.awt.*;
import java.util.Calendar;
public class TestAnimation {
    JFrame frame;
    int x = 50;
    int y = 50;
    public static void main(String [] args) {
        TestAnimation gui = new TestAnimation();
        gui.go();
    }
    public void go() {
        frame = new JFrame();
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        MyDrawPanel drawPanel = new MyDrawPanel();
        frame.getContentPane().add(BorderLayout.CENTER, drawPanel);
        frame.setSize(500, 500);
        frame.setVisible(true);
        while (x < 400) {
            Calendar cal = Calendar.getInstance();
            long start = cal.getTimeInMillis();
            while (true) {
                Calendar cal2 = Calendar.getInstance();
                if (cal2.getTimeInMillis() - start > 100) {
                    break;
                }
            }
            ++x;
            ++y;
            frame.repaint();
        }
    }
    
    class MyDrawPanel extends JPanel {
        public void paintComponent(Graphics g) {
            g.setColor(Color.red);        
            g.fillOval(x, y, 50, 50);
        }
    }
}
入出力結果(Terminal)
$ javac TestAnimation.java && java TestAnimation $
記念に。
0 コメント:
コメントを投稿