2013-08-07 3 views
2

Ну, мне было интересно, могу ли я создать изображение значка для JFrame. Я знаю, что это возможно, потому что, позвольте мне сказать, я НЕ копаю логотип java.Создание пользовательского значка для JFrame

Ну, если я просто хочу использовать объект Frame, я сделаю это.

Может кто-нибудь сказать мне, я знаю, что это возможно!

+1

Привет Ной, проверить верхний ответ на этот вопрос: http://stackoverflow.com/questions/1614772/how-to-change-jframe-icon –

ответ

2

Сначала у вас должен быть файл изображения на вашем компьютере. Его можно назвать чем угодно. В этом примере мы будем называть это «pic.jpg». Затем вам нужно включить его в файлы, которые использует ваше приложение. Например, если вы используете NetBeans, вы просто нажимаете «Файлы» в левой части среды IDE (не файл, как в меню, заметьте). Перетащите файл изображения в папку, в которой находится основной пакет. Это будет включать его для использования в коде. Внутри метода где вы определяете JFrame, вы можете создать образ как это:

Image frameImage = new ImageIcon("pic.jpg").getImage(); 

Теперь вы можете установить его в качестве IconImage для кадра, как это:

JFrame frame = new JFrame("Title"); 
frame.setIconImage(frameImage); 

надеюсь, что это полезно.

Примечание: причина, по которой объект изображения должен быть создан таким образом, заключается в том, что изображение является абстрактным и не может быть создано, произнося новое изображение();

Реквизиты для вас, кстати, малыш. Хотелось бы, чтобы я начал учиться программированию, когда был в твоем возрасте. Держись! Не сдавайся!

+0

@Smit Спасибо за редактирование. Не могу поверить, что я не включил лишние " –

3

Используйте ImageIcon.

ImageIcon icon = new ImageIcon(pathToIcon); 
yourFrame.setIconImage(icon.getImage()); 

Удачи!

1

Вы можете сделать следующее.

public Test { 
    public static void main(String[] args) { 
    JFrame frame = new JFrame("My Frame"); 
    frame.setIconImage(new ImageIcon(Test.class.getResource("image.png")); 
    frame.setDefaultCloseOperation(JFrame.HIDE_ON_CLOSE);             
    frame.setVisible(true); 
    frame.setSize(100, 100);    

    //other stuffs.... 
    } 
} 
Смежные вопросы