2017-03-25 15 views
-3

ImageIconを描きたいと思います。Javaで再描画する方法を知りません。

public class Test extends JPanel { 

    static ImageIcon image = new ImageIcon("AAA.png"); 
    static JFrame j; 

    public void paintComponent(Graphics g) { 
     super.paintComponent(g); 
     image.paintIcon(j, g, 200, 200);  
    } 

    public static void main(String[] args) { 
     j = new JFrame(); 
     j.setSize(700, 700); 
     j.repaint(); 
     j.setVisible(true); 
    } 
} 

誰かが私を助けることができますか?私はちょうどイメージアイコンを描きたい

+0

質問は正確には何ですか? – Mureinik

+0

Testのインスタンスを作成してフレームに追加する必要があります – BackSlash

+0

OK、ありがとうございます!なぜそれをする必要があるのか​​私に説明できますか? – mat

答えて

1

...

その後のJLabelにアイコンを追加し、フレームにラベルを追加します。詳しくは、How to Use IconsのSwingチュートリアルのセクションを読んでください。

これらの静的変数をすべて削除します。これはクラスデザインが悪いことを示しています。

また、repaint()ステートメントは必要ありません。フレームはまだ見えていないので、ステートメントは何もしません。

チュートリアルからサンプルをダウンロードして、クラスとしてコードを作成するためのテンプレートとして使用してください。デモコードから基本を学びます。

+0

public class TestはJPanelを継承します{ static ImageIcon image = new ImageIcon( "AAA.png"); static JFrame j; public void paintComponent(Graphics g){ super.paintComponent(g); image.paintIcon(j、g、200、200); } publicテスト{ j = new JFrame(); j.setSize(700,700); j.repaint(); j.setVisible(true); } } – mat

+0

@mat、上記のコメントを削除してください。私はそのコードが何であるか分かりません。私の提案との関連はありません。質問に関連するコードを質問に掲載する必要があります。 – camickr

関連する問題