Witam, mam problem z dodaniem menu do ramki, w zasadzie mam problem z dodaniem czegokolwiek do ramki, ale myślę że jeżeli uda mi sie wstawić to menu to resztę też dam rade wstawić.Otóż mam trzy klasy:
-pierwsza o nazwie kalkulator jest klasą główną i uruchamia program.
-druga o nazwie Frame odpowiada za rzeczy związane z ramka
-trzecia o nazwie MenuBar odpowiedzialna jest za wyświetlenie menu pod paskiem tytułu
Sama klasa Frama działa bez zarzutu tak jak chce. Klasa MenuBar także działa prawidłowo i zachowuje się poprawnie (sprawdzona w innym programie).
Moim problemem jest to że nie moge umieścić menu w ramce.
Oto moj kod:
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.InputEvent;
import java.awt.event.KeyEvent;
import javax.swing.*;
public class kalkulator
{
public static void main(String[] args)
{
EventQueue.invokeLater(new Runnable()
{
public void run()
{
Frame frame = new Frame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
});
}
}
class Frame extends JFrame
{
private static final int DEFAULT_WIDTH = 300;
private static final int DEFAULT_HEIGHT = 200;
private static final String DEFAULT_TITLE = "Kalkulator";
private static final boolean DEFAULT_RESIZABLE = false;
private static final boolean DEFAULT_POSITION = true;
public Frame()
{
setLocationByPlatform(DEFAULT_POSITION);
setSize(DEFAULT_WIDTH, DEFAULT_HEIGHT);
setTitle(DEFAULT_TITLE);
setResizable(DEFAULT_RESIZABLE);
MenuBar menubar = new MenuBar();
}
}
class MenuBar extends JFrame
{
public MenuBar()
{
JMenuBar menuBar = new JMenuBar();
setJMenuBar(menuBar);
JMenu fileMenu = new JMenu("Plik");
JMenuItem ZapiszJako = fileMenu.add(
new AbstractAction("Zapisz jako")
{
public void actionPerformed(ActionEvent zdarzenie)
{
}
});
ZapiszJako.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_S, InputEvent.CTRL_MASK));
JMenuItem Zakoncz = fileMenu.add(
new AbstractAction("Zamknij")
{
public void actionPerformed(ActionEvent zdarzenie)
{
System.exit(0);
}
});
Zakoncz.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_F4, InputEvent.ALT_MASK));
JMenu helpMenu = new JMenu("Pomoc");
JMenuItem Informacje = helpMenu.add(
new AbstractAction("Kalkulator - informacje")
{
public void actionPerformed(ActionEvent zdarzenie)
{
}
});
menuBar.add(fileMenu);
menuBar.add(helpMenu);
}
}