Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- private JMenuBar jMenuBar;
- private JMenu jMenu1;
- jMenuBar = new JMenuBar();
- jMenu1 = new JMenu();
- jMenu1.setText("ABOUT");
- //and here add a MenuListener so that i can detect when a menu is clicked:
- jMenu1.addMenuListener(this);
- jMenuBar.add(jMenu1);
- setJMenuBar(jMenuBar);
- //and here i implement the menulisteners
- public void menuSelected(MenuEvent e) {
- //my logic here
- }
- public void menuDeselected(MenuEvent e) {}
- public void menuCanceled(MenuEvent e) {}
- jMenu2.addMenuListener(this);
- public void menuSelected(MenuEvent e) {
- //Make sure jMenu1 and jMenu2 are accessible in here.
- if(e.getSource()==jMenu1)
- operationForMenu1();
- else if(e.getSource()==jMenu2)
- operationForMenu2();
- }
- jMenu1.addMenuListener(new MenuListener() {
- @Override
- public void menuSelected(MenuEvent arg0) {
- // operation here.
- }
- @Override
- public void menuDeselected(MenuEvent arg0) {
- }
- @Override
- public void menuCanceled(MenuEvent arg0) {
- }
- });
- jMenu2.addMenuListener(new MenuListener() {
- @Override
- public void menuSelected(MenuEvent arg0) {
- // operation here.
- }
- @Override
- public void menuDeselected(MenuEvent arg0) {
- }
- @Override
- public void menuCanceled(MenuEvent arg0) {
- }
- });
- jMenu1.addActionListener(new ActionListener(){
- public void actionPerformed(ActionEvent e) {
- // Perform action on menu1 clicked here
- }
- }
- public void menuSelected(MenuEvent evt) {
- String menuName;
- Object obj = evt.getSource();
- if (obj instanceof JMenu) {
- JMenu menu = (JMenu) obj;
- menuName = menu.getText();
- System.out.println(menuName);
- } else {
- return;
- }
- switch (menuName) {
- case "Edit":
- if (undo.hasPreviousState()) {
- jMenuItemEditUndo.setEnabled(true);
- } else {
- jMenuItemEditUndo.setEnabled(false);
- }
- if (undo.hasNextState()) {
- jMenuItemEditRedo.setEnabled(true);
- } else {
- jMenuItemEditRedo.setEnabled(false);
- }
- break;
- case "Insert":
- DefaultListModel<String> listModel = (DefaultListModel<String>) jListTags.getModel();
- if (listModel.contains("table")) {
- jMenuItemInsertTable.setEnabled(true);
- } else {
- jMenuItemInsertTable.setEnabled(false);
- }
- break;
- default:
- System.out.println("Menu " + menuName + " not a special case in menuSelected");
- }
- }
Add Comment
Please, Sign In to add comment