2012-04-04 6 views
0

나는 정말 짜증나는 문제가있다. 하지만 지금은 이상한 일이 발생합니다 : 때때로, 이미지가 나타나고 가끔이 아닙니다! 그러나 전체 프레임을 최소화하고 다시 최대화하면 이미지는 항상입니다! 물론 이미지를 그릴 때 모든 것을 다시 칠하고 있지만 말했듯이 아무 일도 일어나지 않고 이미지가 (항상) 표시되지는 않습니다.이미지는 때로는

내가 뭘 잘못하고 있니?

좋아, 문제 코드 :

 //this is the method I load my image with 
    private BufferedImage loadImage(String name) { 
     try { 
      return ImageIO.read(new File(name)); 
     } catch (IOException e) { 
      e.printStackTrace(); 
      return null; 
     } 
    } 


    //this is the paint method of my JPanel 
public void paint(Graphics g){ 
    super.paint(g); 
    g.drawImage(img, 0, 0, getWidth(), getHeight(), this); 
} 
+1

당신이 사용하고있는 언어를 지정하고 관련 코드 스 니펫을 게시하십시오. –

+0

더 나은 도움을 받으려면 – QI3it

+0

Java를 사용하고 있습니다. [SSCCE] (http://sscce.org/), – mKorbel

답변

0

방법은 이미지를 그릴 수 있습니까?

환경이란 무엇입니까? WPF, Winform ...

가장 일반적인 문제는 페인트 이벤트를 사용해야한다는 것입니다. 한 번 그려지기 때문에, 당신의 모양, 심상은 새로운 페인트 과정이 시작하자마자 잃을 것이다.

+0

으로 질문을 편집하십시오. 1. 빠른 대답을 주셔서 감사합니다! 2. 내 JPanel의 paint 메서드로 이미지를 그립니다. 'g.drawImage (img, 0, 0, getWidth(), getHeight(), this);' 및 내 환경 : Mac을 사용하고 있습니다. – QI3it

+0

확인했는데 문제가 일시적으로 해결되었습니다. 모든 패널과 문제 패널이 포함되어있는 프레임을 다시 그립니다. 잠시 동안 그것이 작동하지만, 나는 그다지 좋은 해결책이라고 생각하지 않는다. 이제는 'repaint()'와 'setVisible (true)'을 호출하지만 페인트 문제가 없다는 것이 내 문제라는 것을 알고 있습니다. @Boas Enkler가 말했듯이, 그것은 sth을해야 할 것입니다. 페인트 이벤트. 누군가가 무엇을해야할지 알고 있으면 나를 도우십시오. 많은 감사! – QI3it

+0

도움을 드리고 싶지만이 분야에서 .net 세계를 지금하고 있습니다. 거기에 페인트 이벤트를 전달하는 페인트 이벤트와 같은 것이 있습니까? 일반적으로 당신은 자바에서 –

관련 문제