31 января 2013

Java desktop part 1

Если делать приложение без использования картинок или иконок, только стандартным компонентами swing, то приложение будет безликим и не запоминающимся. Поэтому многие разработчики наполняют свое приложение картинками, иконками и другими графическими элементами.

Но тут у новичков появляется вопрос после того как они соберут свой jar. Ибо просто так в jar, а если и попадают что не подкружаются. Я в свое время потратил на решение данного вопроса целый день, но после того как я разобрался все заработало.

В данном примере мы будем делать кнопку с картинкой:

setImage("/png/image.png")


public final void setImage(String pathImage) {
    java.net.URL imgURL = getClass().getResource(pathImage);
    if (imgURL != null) {
        ImageIcon  icon =  new ImageIcon(imgURL);
        super.setIcon(icon);
    } else {
        System.err.println("Couldn't find file: " + pathImage);
    }
}


А теперь самое важное, куда же положить картинки чтобы виртуальная машина смогла их найти и подрузить:

project -> src-> png


Теперь если собрать проект то картинки будут подгружаться, если что-то не получится с первого раза, то вполне возможно что вы ошиблись с путем файла, проверьте его и попробуйте еще раз.