2012-02-29 7 views
2

메시지와 그래픽을 표시하지만 자이 썬을 사용하여 작은 자바 애플릿을 만들고 싶습니다. 나는 오류 메시지가 아래의 코드를 사용하여 "형식 오류 :의 setIcon() : 첫번째 인수가 javax.swing.Icon에 강요 할 수 없다"자이 썬 구문을 사용하여 JFrame/JLabel 만들기

할 수있는 모든 사용자의 서비스 조언으로 내가 얻을 수있는 방법

  1. 에 이 코드 조각은 작동합니까?
  2. 여기서 Java.swing 객체를 사용하여 GUI 윈도우를 만드는 자이 썬 예제를 찾을 수 있습니까?

대단히 감사합니다. 표 덮개.

############################# 
from javax.swing import JFrame; 
from javax.swing import *; 
from java.awt import *; 

jf = JFrame(); 
jf.setSize(500,500); 
jf.setLocation(100, 50); 
jf.setTitle('This is the title'); 
jf.setLayout(FlowLayout()); 
l = JLabel(); 
l.setIcon('lena.png'); 
jf.add(l); 
jf.pack(); 
jf.setVisible(True); 
#
+0

아래 Favonius의 대답이 문제를 해결 한 경우 옆에있는 퇴색 한 녹색 체크를 클릭하여 수락 할 수 있습니다. –

답변

4

l.setIcon('lena.png');setIcon() 방법은 아이콘이 아닌 문자열을 예상 문제입니다. 올바른 방법은 ImageIcon을 만든 다음 사용하는 것입니다. 예를 들어 :

ico = ImageIcon('croco.png'); 
l.setIcon(ico); 

croco.png 내 시스템에서 테스트 이미지입니다.

+0

Favonius, 효과가있었습니다. 대단히 고마워, 나는 이것에 벽에 나의 머리를 두들 기는 2 일의 최고의 부분을 썼다. .. 아스피린보다 좋은! – thescoop

+0

경로를 지정하지 않고 이미지를로드 할 때 현재 작업 디렉토리가 사용됩니다. 이로 인해 자이 썬 스크립트를 다른 폴더에있는 Java 프로그램에 전달할 때 두통이 들었지만 sys.argv [0]에서 스크립트 경로를 가져 와서 해결했습니다. – fejd