Попробуем сделать что-то типа такого:
Код JToolBarDemo.java
Код:
import java.awt.event.*; import java.awt.*; import javax.swing.*; import javax.swing.border.*; public class JToolBarDemo extends JFrame implements ActionListener { private JMenuItem popupNew = null; // Контекстное меню "Новый" private JMenuItem popupOpen = null; // Контекстное меню "Открыть" private JMenuItem popupSave = null; // Контекстное меню "Сохранить" private JMenuItem popupPrint = null; // Контекстное меню "Напечатать" private JMenuItem popupExit = null; // Контекстное меню "Выход" private final JButton btnNew = null; // Кнопка "Новый" private final JButton btnOpen = null; // Кнопка "Открыть" private final JButton btnSave = null; // Кнопка "Сохранить" private final JButton btnPrint = null; // Кнопка "Печать" public JToolBarDemo() { Color c = new Color(234, 234, 234); // Цвет фон кнопок Dimension d = new Dimension(32, 32); // Размер кнопки setTitle("JToolBarDemo"); // Устанавливаем заголовок окна JToolBarDemo setSize(640, 480); // Устанавливаем размер окна setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // Устанавливаем обработчик прерывание при закрытие программы, просто выйти setLayout(new BorderLayout()); // Устанавливаем Layout JMenuBar mnubar = new JMenuBar(); // Строка меню JMenu mnu1 = new JMenu("Файл"); // Меню "Файл" popupNew = new JMenuItem("Новый"); // Добавляем в контекстное меню "Новый" popupNew.addActionListener(this); mnu1.add(popupNew); popupOpen = new JMenuItem("Открыть"); // Добавляем в контекстное меню "Открыть" popupOpen.addActionListener(this); mnu1.add(popupOpen); popupSave = new JMenuItem("Сохранить"); // Добавляем в контекстное меню "Сохранить" popupSave.addActionListener(this); mnu1.add(popupSave); JSeparator sep1 = new JSeparator(); // Добавляем разделитель mnu1.add(sep1); popupPrint = new JMenuItem("Печать"); // Добавляем в контекстное меню "Печать" popupPrint.addActionListener(this); mnu1.add(popupPrint); JSeparator sep2 = new JSeparator(); // Добавляем разделитель mnu1.add(sep2); popupExit = new JMenuItem("Выход"); // Добавляем в контекстное меню "Выход" popupExit.addActionListener(this); mnu1.add(popupExit); mnubar.add(mnu1); // Добавляем меню в строку меню setJMenuBar(mnubar); // Добавляем строку меню в наше приложение JToolBar toolbar = new JToolBar("Toolbar Demo"); // Создаём панель инструментов toolbar.setFloatable(true); toolbar.setRollover(true); JButton btnNew = new JButton(new ImageIcon(getClass().getResource("/_NEW.PNG"))); // Добавляем кнопку "новый файл", в панель инструментов btnNew.addActionListener(this); btnNew.setToolTipText("Новый файл"); btnNew.setSize(d); btnNew.setBackground(c); toolbar.add(btnNew); JButton btnOpen = new JButton(new ImageIcon(getClass().getResource("/_OPEN.PNG"))); // Добавляем кнопку "открыть файл", в панель инструментов btnOpen.addActionListener(this); btnOpen.setToolTipText("Открыть файл"); btnOpen.setSize(d); btnOpen.setBackground(c); toolbar.add(btnOpen); JButton btnSave = new JButton(new ImageIcon(getClass().getResource("/_SAVE.PNG"))); // Добавляем кнопку "сохранить файл", в панель инструментов btnSave.addActionListener(this); btnSave.setToolTipText("Сохранить файл"); btnSave.setSize(d); btnSave.setBackground(c); toolbar.add(btnSave); JSeparator sep3 = new JSeparator() { // Добавляем разделитель @Override public Dimension getMaximumSize(){ return new Dimension(5, 32); // Размер разделителя } }; sep3.setOrientation(JSeparator.VERTICAL); // Вертикальный разделитель toolbar.add(sep3); JButton btnPrint = new JButton(new ImageIcon(getClass().getResource("/_PRINT.PNG"))); // Добавляем кнопку "печать", в панель инструментов btnPrint.addActionListener(this); btnPrint.setToolTipText("Печать"); btnPrint.setSize(d); btnPrint.setBackground(c); toolbar.add(btnPrint); add(toolbar, BorderLayout.NORTH); JLabel lbStatus = new JLabel("Тут Statusbar..."); add(lbStatus, BorderLayout.SOUTH); setVisible(true); } public static void main(String[] args) { new JToolBarDemo(); // Инициализация } // Ловим событие public void actionPerformed(ActionEvent e) { // Выдаём событие на экран System.out.println(e.getSource().toString()); // Если нажали на меню "Выход", то выходим if(e.getSource() == popupExit) System.exit(0); } }
Затем откомпилируем
Код:
javac -encoding utf8 JToolBarDemo.java
и запустим наше приложение
Код:
java JToolBarDemo