POJ 10
Swing
Komponenty GUI
Poznajemy komponenty Swinga i ich właściwości
Zaprojektuj aplikację okienkową Swing, używając komponentów tego pakietu.
Program powinien stanowić interfejs graficzny do jakiejś sensownej aplikacji.
Może to być np.:
zwykły edytor,
przeglądarka systemu plików,
gra z prostą grafiką,
program do sporządzania rysunków.
Na następnych zajęciach będziemy dodawać do niego obsługę zdarzeń (myszka, klawiatura).
Należy (sensownie) użyć możliwie wielu różnych komponentów Swing
oraz eksperymentować z ich właściwościami.
Użyj kontenerów (np. JPanel) do grupowania inncy komponentów.
Sposób budowania aplikacji Swing (a raczej konstruktora jej głównej klasy) jest taki:
import java.awt.*;
import javax.swing.*;
class SwingGui extends JFrame {
public SwingGui()
{
// Ustalenie tytułu okna (opcjonalne):
super("Swing GUI");
// Umiejscowienie okna na ekranie (opcjonalne):
setLocation(300, 300);
// ustalenie obsługi zamknięcia okna
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
// Ustalenie rozkładu (opcjonalne):
setLayout(new FlowLayout());
// Tworzenie komponentów:
JLabel lab = new JLabel("Etykieta");
/*
* różne komponenty ...
*/
JButton but = new JButton("Przycisk");
// Ustalenie własciwości komponentów:
lab.setForeground(Color.red);
/*
* właściwości zależne od komponentu ...
*/
but.setBackground(Color.blue);
// Dodanie komponentów do contentPane, inaczej się nie ukażą:
add(lab);
/*
* dodajemy komponenty, które mają być umieszczone w głównym oknie
*/
add(but);
/* Poniższe dwie instrukcje są niezbędne.
* Mogą wystąpić tylko na końcu kodu budującego okno.
*/
// ustalenie rozmiarów okna
pack();
// pokazanie okna
setVisible(true);
}
public static void main(String[] args)
{
new SwingGui();
}
}
Najprostsze komponenty, których można użyć to:
JPanel
JLabel
JButton
JCheckbox
JRadioButton
JToggleButton
JTextArea
JTextField
JComboBox
Bardziej złożone to:
JScrollbar
JSpinner
JSlider
JList
JScrollPane
JSplitPane
JTabbedPane
JTable
JTree
Wymagają one dodatkowych operacji do sensownego użycia.
Można również użyć dialogów:
JFileChooser
JColorChooser
JOptionPane
Dodatkowe właściwości:
Tworzenie menu: klasy JMenuBar, JMenu, JMenuItem i inne.
Tworzenie paska narzędzi: komponent JToolBar.
Skróty klawiaturowe: metoda setMnemonic(char).
Dymki podpowiedzi: metoda setToolTipText(String).
Klasy pochodzą z pakietu javax.swing lub java.awt.
Wyszukiwarka
Podobne podstrony:
cwicz10cwicz12cwicz10cwicz11Cwicz1cwicz11 15Cwicz12 2cwicz13cwicz11Cwicz11 2Cwicz11cwicz10 11cwicz13 14cwicz12Cwicz11KolokwiumCwicz12Cwicz10wiÄcej podobnych podstron