2013-03-20 7 views
1

자바를 처음 접했을 때 볼 수있는 가장 쉬운 질문인데도 여전히 인터넷에서 anser를 찾을 수 없습니다.이클립스 이클립스

나는이 코드는 작동하지, 내 프로그램의 아이콘을 설정하려면 : frame.setIconImage(Toolkit.getDefaultToolkit().getImage("MYPROBLEM"));

그러나 내가 MYPROBLEM 섹션에서 올바른 경로를 얻을 수 없습니다. 이것은 내 구조 :

프로젝트 이름

-src

--default 패키지

--- MyFunctions로

--test < ----지도

--- icon.png

MYPROBLEM을 src/test/icon.png로 바꿀 때마다 효과가 있습니다. 그러나 내 응용 프로그램을 항아리로 내보낼 때 기본 Java 아이콘이 나타납니다. MYPROBLEM을 test/icon.png와 같은 것으로 바꾸는 것도 효과가 없습니다.

나는 나의 영어를 appologise. 나를 안심 시켜라.)

+0

(Eclipse를 사용하지만,이 질문을 항상 표시되지 않습니다) – MadProgrammer

+0

'frame.setIconImage (Toolkit.getDefaultToolkit(). getImage ("MYPROBLEM.png"));' –

+0

.png 부분은 문제가 아닙니다. 리소스 폴더를 만들 위치를 모른다. 기본적으로 no가 있습니다. – jipje44

답변

1

이것은 클래스 패스에서 이미지를로드 할 것이다.

Image image = new ImageIcon(this.getClass().getResource("MYPROBLEM")).getImage(); 
frame.setIconImage(image); 
+0

은 src 폴더에 icon.png를 놓았습니다. getImage ("icon.png")가 작동하지 않았습니다. – jipje44

+0

다음은 업데이트 된 버전입니다. – clav

+0

놀라워요! 고마워요! – jipje44

0

어떤 이유로 이미지가 작동하지 않지만 이미지 위치의 전체 경로를 추가하는 것이 좋습니다. 참고 ImageName \ \ 사용자 \ yourloginname 문서 \ \ NetBeansProjects \ 프로젝트 _ 이름을 : 당신이 다음 위치

C 것 넷빈즈를 사용하는 경우 여기에 귀하의 경우에는 예를 들어

import java.awt.Dimension; 
import java.awt.Image; 

import java.awt.Toolkit; 

import javax.swing.JFrame; 

import java.awt.Toolkit; 

import javax.swing.JFrame; 

public class JFrameIcon { 

    public static void main(String[] args) { 

     JFrame frame = new JFrame(); 

     frame.setSize(300, 150); 

     frame.setTitle("tutorialData.com"); 

     frame.setResizable(false); 

     frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 

     frame.setAlwaysOnTop(true); 

     frame.setIconImage(Toolkit.getDefaultToolkit().getImage("C:\\Users\\Sirnurpc\\Desktop\\icon.png")); 

     frame.setVisible(true); 

    } 

} 

참조 seticon

입니다. png

그리고 내가 사용하고있는 것으로 추측하는 Eclipse의 경우 다음과 같이됩니다.

C : \ 사용자 \ yourlogingname 작업 공간 \ \ 프로젝트 _ \ imagename.png 나는 자원의 이러한 종류의 리소스 폴더에있을 필요가 있다고 생각

+0

이것은 내가 찾고있는 것이 아닙니다. .jar는 다른 컴퓨터에도 배포됩니다. 따라서 "정적"경로는 작동하지 않습니다. – jipje44

+0

기본 패키지를 사용하고 있습니까? –

+0

나는 이클립스를 사용하고있다. 나는 기본 패키지가 무엇을 의미하는지 알지 못한다. 그러나 그것의 작은 프로젝트와 나는 그것에 이상한 것을 추가하지 않았다. 나는 단지 표준 Java 프로젝트를 선택했다. – jipje44