Как импортировать изображение в строке меню - PullRequest
1 голос
/ 24 августа 2011

Я создал простую строку меню и не знаю, как импортировать изображение в свободное пространство.

Мой код указан ниже:

import java.awt.event.*;
import java.awt.*;
import javax.swing.*;
import java.io.IOException;

public class MyMenu extends JFrame {

    JMenuBar menubar;
    JMenu file, edit, contact, quit;
    JMenuItem exit, open, search, delete, registration, informations;

    public MyMenu() {
        setLayout(new FlowLayout());
        //___________________________ FILE __________________________________
        menubar = new JMenuBar();
        setJMenuBar(menubar);
        file = new JMenu("Αρχείο");
        menubar.add(file);
        open = new JMenuItem("Άνοιγμα πελατολογίου");
        file.add(open);
        event e1 = new event(); // Compiler Error
        open.addActionListener(e1);
        //__________________________________ EDIT ____________________________
        edit = new JMenu("Ενέργειες");
        menubar.add(edit);
        search = new JMenuItem("Αναζήτηση");
        edit.add(search);
        registration = new JMenuItem("Καταχώρηση");
        edit.add(registration);
        delete = new JMenuItem("Διαγραφή");
        edit.add(delete);
        //_________________________________ CONTACT __________________________
        contact = new JMenu("Επικοινωνία");
        menubar.add(contact);
        informations = new JMenuItem("Πληροφορίες");
        contact.add(informations);
        //___________________________________QUIT_____________________________
        quit = new JMenu("Έξοδος");
        menubar.add(quit);
        exit = new JMenuItem("Έξοδος");
        quit.add(exit);
        event e = new event(); // Compiler Error
        exit.addActionListener(e);
    }

    public class MyEvent implements ActionListener {

        public void actionPerformed(ActionEvent e) {
            System.exit(0);
        }

        public void actionPerformed2(ActionEvent e1) {
            final SimpleTableDemo a = new SimpleTableDemo(); // Compiler Error
            javax.swing.SwingUtilities.invokeLater(new Runnable() {

                public void run() {
                    a.createAndShowGUI();
                }
            });
        }
    }

    public static void main(String[] args) throws IOException {
        MyMenu gui = new MyMenu();
        gui.getContentPane().add(panel); // Compiler Error
        gui.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        gui.setSize(2400, 1900);
        gui.setVisible(true);
    }
}

Это связанов класс Panel?Как я могу воспользоваться свободным пространством и использовать изображение?

Ответы [ 2 ]

4 голосов
/ 24 августа 2011

пожалуйста, напишите здесь Runnable код без ошибок из компилятора Java (помеченный в вашем коде // Compiler Error) перед любым вашим запросом на AddingImage / ImportImage в JMenuBar

необходимые учебные пособия

1) JMenu, JMenuBar, JMenuItems

2) Размещение компонентов в контейнере

3) Как написать прослушиватель действий

4) Как использовать значки

5) и, наконец, для установки Image как JMenuBar BackGround вы должны прочитать кое-что о 2DГрафика

6) примеров на этом форуме, здесь или здесь

4 голосов
/ 24 августа 2011

A JMenuItem может быть создан для отображения изображения.

ImageIcon icon = new ImageIcon("path_to_your_image");
JMenuItem item = new JMenuItem(icon);
...