2011-09-10 5 views
2

私が作成したファイルチューザから取得した画像を表示する際に問題が発生しています。私に提案してもらえますか?イメージはバッファリングされたイメージとして作成されます。ここでファイルチューザから画像を表示

は私のコードです:ここでは

public void actionPerformed(ActionEvent e) 
{ 
    if (e.getSource().getClass().getName().contains("JMenuItem")) 
    { 
     if (e.paramString().contains("Load")) { 
      JFileChooser fc = new JFileChooser(); 
      fc.setCurrentDirectory(new File(".")); 
      int retVal = fc.showOpenDialog(null); 
      if (retVal == 0) 
      { 
       File file = fc.getSelectedFile(); 
       try { 
       image = ImageIO.read(file); 
      } catch (IOException e1) { 
       // TODO Auto-generated catch block 
      e1.printStackTrace(); 
     } 
    } 
} 

は、表示のためのコードは次のとおりです。表示画面(複数可)のための2Dグラフィックで悩ま、JLabel約一例をImage/ImageIconを置くのはなぜ

public void paint(Graphics g){ 
    super.paintComponents(g); 
    g.drawImage(getIconImage(), 0, 0, control); 
    g.drawImage(image, 0, 0,null); 
    repaint(); 
} 
+0

あなたはどんな問題がありますか? – Mat

+1

あなたはどんなエラーがありますか?なぜdrawImageを2回呼びますか?全体のコードまたはSSCCE、または少なくともエラーを報告しているスタックトレースを投稿できますか? – Heisenbug

+0

イメージは私のGUIに表示されないと思う。ファイルセレクタから取得した画像を私のGUIに表示したい。私のGUIのコードを見たいですか? – user938295

答えて

4

JFileChooser + Image + paintCompoent(),

public void paint(Graphics g){// paintComponent not paint 
    super.paintComponents(g); // paintComponent not paintComponents 
..... 

スイング可能JComponents

public void paintComponent(Graphics g){ 
    super.paintComponent(g); 
...... 
+0

+1すてきなスケーリングの例があります[ここ](http://stackoverflow.com/questions/6916693/jmenuitem-imageicon-too-big)。 – trashgod