フランスの国旗を表示する

矩形の塗りつぶしでフランスの国旗を描きます。

前田稔の超初心者のプログラム入門

プログラムの説明

  1. 以下の説明を参考にして「青白赤」の矩形を並べてフランスの国旗を描画するプログラムを作成して下さい。
    プログラムの名前を France.java として説明します。
  2. このプログラムでは Swing を用いるため java.awt と javax.swing をインポートします。
    class France は JFrame を継承します。
    フランス国旗は3色なので三色分定義して下さい。
        import java.awt.*;
        import javax.swing.*;
    
        class France extends JFrame
        {
            public Color color1, color2, color3;
        
  3. France のコンストラクタです。
    Color(0,0,255) が色の指定で、赤,緑,青の順に0〜255の範囲で指定します。
        // Constructor
        public France()
        {   super("France Flag");
            setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            color1 = new Color(0, 0, 255);
               ・・・
            setSize(500, 410);
            setVisible(true);
        }
        
  4. paint() は描画処理で呼び出されるメソッドです。
    g.drawString() で画面上部に表示されている文字を表示します。
    g.setColor() で色を設定して、g.fillRect() で塗りつぶしの矩形を描きます。
        public void paint(Graphics g)
        {
            super.paint(g);
            g.drawString("フランス",40,60);
            g.setColor(color1);
            g.fillRect(20,70,150,300);
               ・・・
        
  5. ページ先頭の画面が表示されたら完成です。
    プログラムの終了は Window 画面タイトルバーの「×」をクリックします。

【NOTE】

背景のクリアは getSize() でウインドウサイズを取得して fillRect() で塗りつぶすのが現実的です。
super.paint(g); を呼び出すと時間がかかる上に、既定値(白)でクリアされます。
    Dimension  size = getSize();
    g.setColor(Color.gray);
    g.fillRect(0, 0, size.width, size.height);

超初心者のプログラム入門(Java2)