2011-09-14 9 views

答えて

3

をオーバーライド paintComponents(g)paintComponent(g) JPanelまたはJLabelのメソッドで描画します。以下のようなものがあります。

JPanel panel = new JPanel(){ 
     @Override 
     public void paintComponent(Graphics g) { 
      BufferedImage image = null; // get your buffered image. 
      Graphics2D graphics2d = (Graphics2D) g; 
      graphics2d.drawImage(image, 0, 0, null); 
      super.paintComponents(g); 
     } 
    }; 

JLabelと同じです。または別の方法で:

ImageIcon icon = new ImageIcon(
       fileChooser.getCurrentDirectory().toString() 
       +"/"+fileChooser.getSelectedFile().getName()); 

今、あなたはJLabelの中でイメージアイコンを使用するか、それを追加することができます。

BufferedImage image = null; // get your buffered image. 
    ImageIcon icon = new ImageIcon((Image)image); 
    JLabel label = new JLabel(); 
    label.setIcon(icon); 

あなたはそれが 方法を以下で行うことができますが、FileChooserからイメージをロードしていることを言っているとおりJPanel。


上記のコードはサンプルコードであり、テストされていないため、エラーなく実行する必要はありません。必要に応じて変更する必要があるかもしれません。

+0

JLabeで正しいです! –

+2

@Harry Joy、あなたは 'paintComponent'を意味しましたか? – mre

+0

@mre:いいえ、私は 'paintComponents'を意味します。 'paintComponent'が同じ効果を与えるかどうかは分かりません。 –

関連する問題