Java에서 기본 애플리케이션 아이콘을 어떻게 변경합니까?
NetBeans를 사용하여 익숙한 Java 커피 컵 아이콘을 jar 파일의 디렉토리 디렉토리에 저장 한 png 파일로 변경합니다. 솔루션이 존재하는 주장하는 여러 웹 페이지를 찾았지만 지금 작동하지 않습니다.
현재 내가 가지고있는 내용은 다음과 가변합니다 (try-catch 블록 제외).
URL url = new URL("com/xyz/resources/camera.png");
Toolkit kit = Toolkit.getDefaultToolkit();
Image img = kit.createImage(url);
getFrame().setIconImage(img);
이 코드가 포함 된 클래스는 차이 가있는 경우 com.xyz 패키지에 있습니다. 이 클래스는 또한 JFrame을 확장합니다. 이 코드는 첫 번째 줄에 MalformedUrlException을 발생 개선합니다.
누구든지 작동하는 솔루션이 있습니까?
java.net.URL url = ClassLoader.getSystemResource("com/xyz/resources/camera.png");
경로 앞에 '/'가 필요할 수도 있고 필요하지 않을 수도 있습니다.
Netbeans로 이동하여 디자인보기에서 JFrame
속성 으로 이동하여 아이콘 이미지 속성을 선택하고 iconImage
"사용자 지정 코드"를 사용하여 양식의 속성 설정을 선택한 다음 Form.SetIconImage()
함수에 다음 코드를 입력합니다.
Toolkit.getDefaultToolkit().getImage(name_of_your_JFrame.class.getResource("image.png"))
잊지 마세요 :
import java.awt.Toolkit;
소스 코드에서!
또는 이미지를 클래스와 관련된 위치에 배치하고 자체적으로 모든 패키지 / 경로 정보가 필요하지 않습니다.
com.xyz.SomeClassInThisPackage.class.getResource( "resources/camera.png" );
이렇게하면 모든 클래스를 다른 패키지로 이동하면 클래스와 해당 리소스 디렉토리만이 이동합니다.
이 쓰기 후 시도
initcomponents();
setIconImage(Toolkit.getDefaultToolkit().getImage(getClass().getResource("Your image address")));
/** Creates new form Java Program1*/
public Java Program1()
Image im = null;
try {
im = ImageIO.read(getClass().getResource("/image location"));
} catch (IOException ex) {
Logger.getLogger(chat.class.getName()).log(Level.SEVERE, null, ex);
}
setIconImage(im);
이것은 내가 netbeans의 GUI에서 완벽하게 작동했습니다.
javax.swing.JFrame
사용 방법 을 확장하는 클래스에서 setIconImage
.
this.setIconImage(new ImageIcon(getClass().getResource("/resource/icon.png")).getImage());
다양한 크기의 아이콘을 정의해야합니다. Ubuntu와 같은 Windows 및 Linux 배포판은 작업 표시 줄과 Alt-Tab에서 다른 아이콘을 사용합니다.
public static final URL ICON16 = HelperUi.class.getResource("/com/jsql/view/swing/resources/images/software/bug16.png");
public static final URL ICON32 = HelperUi.class.getResource("/com/jsql/view/swing/resources/images/software/bug32.png");
public static final URL ICON96 = HelperUi.class.getResource("/com/jsql/view/swing/resources/images/software/bug96.png");
List<Image> images = new ArrayList<>();
try {
images.add(ImageIO.read(HelperUi.ICON96));
images.add(ImageIO.read(HelperUi.ICON32));
images.add(ImageIO.read(HelperUi.ICON16));
} catch (IOException e) {
LOGGER.error(e, e);
}
// Define a small and large app icon
this.setIconImages(images);
내부 프레임 생성자
try{
setIconImage(ImageIO.read(new File("./images/icon.png")));
}
catch (Exception ex){
//do something
}
이것을 시도해 볼 수 있습니다 . 잘 작동합니다.
` ImageIcon icon = new ImageIcon(".//Ressources//User_50.png");
this.setIconImage(icon.getImage());`
예:
URL imageURL = this.getClass().getClassLoader().getResource("Gui/icon/report-go-icon.png");
ImageIcon iChing = new ImageIcon("C:\\Users\\RrezartP\\Documents\\NetBeansProjects\\Inventari\\src\\Gui\\icon\\report-go-icon.png");
btnReport.setIcon(iChing);
System.out.println(imageURL);
참고 URL : https://stackoverflow.com/questions/209812/how-do-i-change-the-default-application-icon-in-java
'ProgramingTip' 카테고리의 다른 글
Golang 메모리를 분석하는 방법? (0) | 2020.12.01 |
---|---|
Runnable :: new 대 new Runnable () (0) | 2020.12.01 |
JSTL jar는 어디에서 다운로드 할 수 있습니까? (0) | 2020.12.01 |
ID, 클래스 및 요소 유형 접두사를 포함하는 HTML 명명 규칙? (0) | 2020.12.01 |
내부 클래스의 공용 및 내부 멤버? (0) | 2020.12.01 |