Простая проблема ImageIcon - PullRequest
       0

Простая проблема ImageIcon

1 голос
/ 21 декабря 2011

Мне не удается отобразить значки на моей кнопке. Я скопировал этот код из книги, поскольку я новичок, пытающийся понять программирование на Java. К сожалению, я не могу прогрессировать без этой работы, другие упражнения основаны на изображениях GUI. Я полагаю, что выполнил точные шаги, надеюсь, кто-нибудь может помочь!

Вот простой код:

package Chapter13;

import javax.swing.*;

/** @author Chris */
public class TestButtonIcons extends JFrame
{
    public static void main(String[] args)
    {
        JFrame frame = new TestButtonIcons();
        frame.setTitle("ButtonIcons");
        frame.setSize(200, 100);
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setVisible(true);
    }

    public TestButtonIcons()
    {
        ImageIcon usIcon = new ImageIcon("image/usIcon.gif");
        ImageIcon caIcon = new ImageIcon("image/caIcon.gif");
        ImageIcon ukIcon = new ImageIcon("image/ukIcon.gif");

        JButton jbt = new JButton("Click it", usIcon);
        jbt.setPressedIcon(caIcon);
        jbt.setRolloverIcon(ukIcon);

        getContentPane().add(jbt);
    }
}

File Hierachy:

Как видите, я дважды скопировал файл "image", пытаясь отладить это. Все изображения находятся в папке «изображения», несмотря на то, что фотографии не показывают их все.

File Hierachy

Ответы [ 3 ]

2 голосов
/ 21 декабря 2011

вам нужно создать папку с изображениями вне пакета с исходным кодом, когда вы запускаете из netbeans, а когда вы запускаете непосредственно исполняемый файл jar, вам нужно поместить исполняемый файл jar и папку с изображениями в ту же папку или в то же место

1 голос
/ 21 декабря 2011

Если вы используете командную строку для запуска вашей программы, просто вставьте эту папку с изображениями вместе с вашей папкой пакета chapter13 (которая содержит ваш TestButtonIcons.class).

Или, если вы используете какую-то IDE, проверьте, куда идут ваши скомпилированные материалы.Снова вставьте папку с изображениями рядом с папкой пакета chapter13 (которая содержит ваш TestButtonIcons.class).Это сделает все необходимое для запуска программы, как вы ожидаете.

С уважением

1 голос
/ 21 декабря 2011

Кажется, это небольшая проблема с BookExcercises; это не нормальный проект. Обычный проект NetBeans (вы можете увидеть все на вкладке «Файлы» справа от вкладки «Проекты»): есть каталог src , показанный в разделе «Исходные пакеты». При создании проекта заполняется каталог target . Теперь build поместит туда файлы .class, а также скопирует ваши изображения. Выполнить (проект) будет запускаться как путь к классу целевого каталога. Запустить файл , однако может не найти изображения в целевом каталоге.

Решение зависит от проекта BookExcercises. Вы можете создать новый проект для каждого упражнения. В зависимости.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...