Netbeans6.9.1 Изображение в виде значков - PullRequest
0 голосов
/ 15 марта 2011

В настоящее время я использую Netbean 6.9.1, и я просто хочу добавить несколько файлов PNG в мою программу при сборке.Я использую файлы в качестве значков для некоторых кнопок и меток графического интерфейса.Но когда я выбираю очистить и собрать основной проект или создать основной проект и выполнить файл JAR вне среды IDE, значки отсутствуют.

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

void setMainForm(Resources r) {
        UIManager.getInstance().setResourceBundle(r.getL10N("localize", "en"));

        MainScreenForm main = new MainScreenForm(this, "Business Organiser");
        if(mainMenu != null){
            main.setTransitionInAnimator(mainMenu.getTransitionInAnimator());
            main.setTransitionOutAnimator(mainMenu.getTransitionOutAnimator());
        }else{
            main.setTransitionOutAnimator(CommonTransitions.createFade(400));
        }
        mainMenu = main;
        int width = Display.getInstance().getDisplayWidth(); //get the display width

        elementWidth = 0;


        Image[] selectedImages = new Image[DEMOS.length];
        Image[] unselectedImages = new Image[DEMOS.length];

        final ButtonActionListener bAListner = new ButtonActionListener();
        for (int i = 0; i < DEMOS.length; i++) {
            Image temp = r.getImage(DEMOS[i].getName() + "_sel.png");
            selectedImages[i] = temp;
            unselectedImages[i] = r.getImage(DEMOS[i].getName() + "_unsel.png");
            final Button b = new Button(DEMOS[i].getName(), unselectedImages[i]);
            b.setUIID("DemoButton");
            b.setRolloverIcon(selectedImages[i]);
            b.setAlignment(Label.CENTER);
            b.setTextPosition(Label.BOTTOM);
            mainMenu.addComponent(b);
            b.addActionListener(bAListner);
            b.addFocusListener(new FocusListener() {

                public void focusGained(Component cmp) {
                    if (componentTransitions != null) {
                        mainMenu.replace(b, b, componentTransitions);
                    }
                }

                public void focusLost(Component cmp) {
                }
            });

            demosHash.put(b, DEMOS[i]);
            elementWidth = Math.max(b.getPreferredW(), elementWidth);
        }
         if(cols == 0){
            cols = width / elementWidth;
        }
        int rows = DEMOS.length / cols;
        mainMenu.setLayout(new GridLayout(rows, cols));
        mainMenu.setDragMode(true);

        mainMenu.addCommand(exitCommand);
        mainMenu.addCommand(aboutCommand);
        mainMenu.addCommand(rtlCommand);
        mainMenu.addCommand(dragModeCommand);
        mainMenu.addCommand(runCommand);

        mainMenu.addCommandListener(this);
        mainMenu.show();
    }

1 Ответ

0 голосов
/ 19 мая 2011

Вам нужно поместить изображения в папку src, чтобы они были упакованы в банку (используйте 7zip на банке, чтобы увидеть, что вошло). Вы не указали URL изображения, например значок в корне src должен работать следующим образом:

"/icon.png"
...