Note that there are some explanatory texts on larger screens.

plurals
  1. POJMenuBar disappears when I add paint method
    primarykey
    data
    text
    <p>Im trying to use the following code to eventually make a game. The code, as shown below, works.</p> <pre><code>import java.awt.event.*; import javax.swing.*; public class GUI extends JFrame implements ActionListener { public static void main(String[] args) { GUI g = new GUI(); } public GUI() { try { UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); } catch (Exception e) { e.printStackTrace(); } setSize(500,500); setDefaultCloseOperation(EXIT_ON_CLOSE); setJMenuBar(createMenuBar()); setVisible(true); } public JMenuBar createMenuBar() { JMenuBar menuBar = new JMenuBar(); JMenu fileMenu = new JMenu("File"); fileMenu.setMnemonic(KeyEvent.VK_F); JMenuItem save = new JMenuItem("Save"); save.setMnemonic(KeyEvent.VK_S); save.addActionListener(this); JMenuItem load = new JMenuItem("Load"); load.setMnemonic(KeyEvent.VK_L); load.addActionListener(this); JMenuItem quit = new JMenuItem("Quit"); quit.setMnemonic(KeyEvent.VK_Q); quit.addActionListener(this); fileMenu.add(save); fileMenu.add(load); fileMenu.addSeparator(); fileMenu.add(quit); JMenu editMenu = new JMenu("Edit"); editMenu.setMnemonic(KeyEvent.VK_E); JMenuItem undo = new JMenuItem("Undo"); undo.setMnemonic(KeyEvent.VK_U); undo.addActionListener(this); JMenuItem redo = new JMenuItem("Redo"); redo.setMnemonic(KeyEvent.VK_R); redo.addActionListener(this); editMenu.add(undo); editMenu.add(redo); JMenu helpMenu = new JMenu("Help"); helpMenu.setMnemonic(KeyEvent.VK_H); JMenuItem controls = new JMenuItem("Controls"); controls.setMnemonic(KeyEvent.VK_C); controls.addActionListener(this); JMenuItem about = new JMenuItem("About"); about.setMnemonic(KeyEvent.VK_A); about.addActionListener(this); helpMenu.add(controls); helpMenu.addSeparator(); helpMenu.add(about); menuBar.add(fileMenu); menuBar.add(editMenu); menuBar.add(helpMenu); return menuBar; } public void actionPerformed(ActionEvent e) { System.out.println(e.getActionCommand()); } } </code></pre> <p>However, if you were to put a paint method in it, as shown below, it stops showing the JMenuBar.</p> <pre><code>import java.awt.event.*; import javax.swing.*; public class GUI extends JFrame implements ActionListener { public static void main(String[] args) { GUI g = new GUI(); } public GUI() { try { UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); } catch (Exception e) { e.printStackTrace(); } setSize(500,500); setDefaultCloseOperation(EXIT_ON_CLOSE); setJMenuBar(createMenuBar()); setVisible(true); } public JMenuBar createMenuBar() { JMenuBar menuBar = new JMenuBar(); JMenu fileMenu = new JMenu("File"); fileMenu.setMnemonic(KeyEvent.VK_F); JMenuItem save = new JMenuItem("Save"); save.setMnemonic(KeyEvent.VK_S); save.addActionListener(this); JMenuItem load = new JMenuItem("Load"); load.setMnemonic(KeyEvent.VK_L); load.addActionListener(this); JMenuItem quit = new JMenuItem("Quit"); quit.setMnemonic(KeyEvent.VK_Q); quit.addActionListener(this); fileMenu.add(save); fileMenu.add(load); fileMenu.addSeparator(); fileMenu.add(quit); JMenu editMenu = new JMenu("Edit"); editMenu.setMnemonic(KeyEvent.VK_E); JMenuItem undo = new JMenuItem("Undo"); undo.setMnemonic(KeyEvent.VK_U); undo.addActionListener(this); JMenuItem redo = new JMenuItem("Redo"); redo.setMnemonic(KeyEvent.VK_R); redo.addActionListener(this); editMenu.add(undo); editMenu.add(redo); JMenu helpMenu = new JMenu("Help"); helpMenu.setMnemonic(KeyEvent.VK_H); JMenuItem controls = new JMenuItem("Controls"); controls.setMnemonic(KeyEvent.VK_C); controls.addActionListener(this); JMenuItem about = new JMenuItem("About"); about.setMnemonic(KeyEvent.VK_A); about.addActionListener(this); helpMenu.add(controls); helpMenu.addSeparator(); helpMenu.add(about); menuBar.add(fileMenu); menuBar.add(editMenu); menuBar.add(helpMenu); return menuBar; } public void paint(Graphics g) { } public void actionPerformed(ActionEvent e) { System.out.println(e.getActionCommand()); } } </code></pre> <p>Im not even kidding. Please help</p>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload