odp na pytanie 1:
dodaje się przyciski, a następnie implementuję ich obsługę. Mam nadzieje, że zdjęcie Ci pomoże zobrazowaniem tego jak powstaje kod :) Po wybraniu np : ActionPerformed utworzy się automatycznie taki kod:
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
/*
implementacja obsługi utworzonego przycisku
*/
}
odp na pytanie 2:
mam nadzieje , że dobrze zrozumiałam. Chcesz zrobić zakładki, a w nich menu..?
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package tabbedpane_menu;
/**
*
* @author kasiaKasia
*/
import javax.swing.JTabbedPane;
import javax.swing.ImageIcon;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JFrame;
import javax.swing.JComponent;
import javax.swing.SwingUtilities;
import javax.swing.UIManager;
import java.awt.BorderLayout;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.KeyEvent;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.KeyStroke;
public class TabbedPaneDemo extends JPanel {
public TabbedPaneDemo() {
super(new GridLayout(2, 1));
JTabbedPane tabbedPane = new JTabbedPane();
ImageIcon ikona = createImageIcon("images/middle.gif");
JMenuBar menuBar;
JMenu menu;
JMenuItem menuItem;
//Tworzenie paska menu
menuBar = new JMenuBar();
//Utworzenie 1 menu
menu = new JMenu("Menu");
menu.setMnemonic(KeyEvent.VK_A);
menuBar.add(menu);
menuItem = new JMenuItem(">> 1", KeyEvent.VK_T);
menuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_1, ActionEvent.ALT_MASK));
menu.add(menuItem);
menuItem = new JMenuItem(">> 2", ikona);
menuItem.setMnemonic(KeyEvent.VK_B);
menu.add(menuItem);
menuItem = new JMenuItem(ikona);
menuItem.setMnemonic(KeyEvent.VK_D);
menu.add(menuItem);
JComponent panel1 = menuBar;
tabbedPane.addTab("Zakładka 1", ikona, panel1,
"Chmurka 1");
tabbedPane.setMnemonicAt(0, KeyEvent.VK_1);
JComponent panel2 = makeTextPanel("Opis zakładki nr 2");
tabbedPane.addTab("Zakładka 2", ikona, panel2, "Chmurka 2");
tabbedPane.setMnemonicAt(1, KeyEvent.VK_2);
//Dodanie zadładek do panelu
add(tabbedPane);
//Następująca linia umożliwia korzystanie z kart przewijania.
tabbedPane.setTabLayoutPolicy(JTabbedPane.SCROLL_TAB_LAYOUT);
}
/*
* metoda która zwraca panel w zakładce
*/
protected JComponent makeTextPanel(String text) {
JPanel panel = new JPanel(false);
JLabel filler = new JLabel(text);
filler.setHorizontalAlignment(JLabel.CENTER);
panel.setLayout(new GridLayout(1, 2));
panel.add(filler);
return panel;
}
protected static ImageIcon createImageIcon(String path) {
java.net.URL imgURL = TabbedPaneDemo.class.getResource(path);
if (imgURL != null) {
return new ImageIcon(imgURL);
} else {
System.err.println("Couldn't find file: " + path);
return null;
}
}
private static void createAndShowGUI() {
//Tworzenie i konfiguracja okna.
JFrame frame = new JFrame("Zakładki i menu ");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//Dodawanie zawartości do okna.
frame.add(new TabbedPaneDemo(), BorderLayout.CENTER);
//Wyświetlenie okna (ramki)
frame.pack();
frame.setVisible(true);
}
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
public void run() {
UIManager.put("swing.boldMetal", Boolean.FALSE);
createAndShowGUI();
}
});
}
}
aby ten przykład napisać korzystałam z tych stron internetowych:
http://download.oracle.com/javase/tutorial/uiswing/components/tabbedpane.html
http://download.oracle.com/javase/tutorial/uiswing/components/menu.html#create