Cześć,
Od kilku tygodni uczę się Java w związku z tym mam dwa pytania.
- Chciałbym stworzyć klasę główną i w niej wywoływać inne klasy, w których będą informację o zakładkach programu np. dodanie zamówienia, o programie itd. Jak to najlepiej zrobić ?
- Czytałem na internecie że najlepszym sposobem na pisanie programów w Javie jest nie pisanie kod w klasie main tylko wywoływanie metod do konkretnych klas. Możccie przybliżyć mi temat, jakiś przykład.
Mój obecny kod
package aplikacja.glowna;
import java.awt.CardLayout;
import java.awt.Container;
import java.awt.Dimension;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.io.FileNotFoundException;
import java.io.IOException;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JPanel;
public class Main extends JFrame {
private static final long serialVersionUID = -4575271483481196192L;
Container pane;
CardLayout layout;
public Main() throws FileNotFoundException, IOException {
layout = new CardLayout();
setLayout(layout);
pane = this.getContentPane();
/*Page: Strona główna */
JPanel newPanel = new JPanel();
pane.add("New", newPanel);
JButton przycisk = new JButton("Przycisk");
newPanel.add(przycisk);
/* Page: O programie */
OProgramie metodaOProgramie = new OProgramie();
JPanel panelOProgramieloadPanel = new JPanel();
pane.add("OProgramie", panelOProgramieloadPanel);
panelOProgramieloadPanel.add(metodaOProgramie.getAutorLabel());
/* Page: Save */
JPanel savePanel = new JPanel();
pane.add("Save", savePanel);
/* Menu */
JMenuBar menuBar = new JMenuBar();
JMenu menuPlik = new JMenu();
JMenu menuPomoc = new JMenu();
JMenuItem menuPomocOProgramie = new JMenuItem();
JMenuItem menuPlikNew = new JMenuItem();
JMenuItem menuPlikLoad = new JMenuItem();
JMenuItem menuPlikExit = new JMenuItem();
menuPlik.setText("Plik");
menuPlikNew.setText("Opcja 1");
menuPlikLoad.setText("Opcja 2");
menuPlikExit.setText("Zakończ");
menuPomoc.setText("Pomoc");
menuPomocOProgramie.setText("O programie");
menuPlik.add(menuPlikNew);
menuPlik.add(menuPlikLoad);
menuPlik.add(menuPlikExit);
menuBar.add(menuPlik);
menuBar.add(menuPomoc);
menuPomoc.add(menuPomocOProgramie);
/* Menu */
/* Wywolywanie akcji */
menuPlikExit.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
Main.this.windowClosed();
}
});
menuPlikNew.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
layout.show(pane, "New");
}
});
menuPlikLoad.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
layout.show(pane, "Load");
}
});
menuPomocOProgramie.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
layout.show(pane, "OProgramie");
}
});
/* Wywolywanie akcji */
setTitle("Pizzeria Żarłacz v0.1");
setJMenuBar(menuBar);
setSize(new Dimension(640, 480));
this.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
Main.this.windowClosed();
}
});
}
protected void windowClosed() {
System.exit(0);
}
public static void main(String[] arg) throws FileNotFoundException, IOException {
Main f = new Main();
f.setVisible(true);
}
}
package aplikacja.glowna;
import javax.swing.JButton;
import javax.swing.JPanel;
public class StronaGlowna {
public void StronaGlownaDisplay() {
JPanel newPanel = new JPanel();
JButton przycisk2 = new JButton("Przycisk");
newPanel.add(przycisk2);
}
}