Programmeren in Java/GUI: verschil tussen versies

Verwijderde inhoud Toegevoegde inhoud
Pjetter (overleg | bijdragen)
met source
Geen bewerkingssamenvatting
Regel 1:
{{Programmeren in Java}}
==AWT==
De ''Abstract Window Toolkit'' (AWT) is de platformonafhankelijke verzameling van klassen die een beroep doen op de grafische mogelijkheden van het onderliggende besturingssysteem, waardoor toch een platformafhankelijk uitzicht ontstaat.
 
==Swing==
Swing werd later ontwikkeld. De soms bedroevende grafische componenten van AWT (knoppen, vensters, navigatiebalken, ...) werden geherdefinieerd in Swing. In tegenstelling tot AWT, waar elk grafische element een resource van het besturingssysteem is, heeft Swing een eigen cross-platform library. Hierdoor biedt Swing een hogere diversiteit aan componenten.
 
Het basisvenster wordt nog altijd opgevraagd aan het besturings­systeem, maar de GUI-componenten worden hierop getekend. De onderliggende structuren van AWT werden echter niet verdrongen:
*helper-classes
**Graphics
**Color
**Font
**FontMetrics
**LayoutManagers
* eventmodel
 
Daarom worden altijd beide packages (javax.swing en java.awt) geïmporteerd.
 
==Basisstructuur==
{{Code|
| Taal=Java
| Titel=basisvenster.java
| Code=<source lang=java>
import javax.swing.*;
import java.awt.*;
 
public class HelloWorld extends JFrame{
private JTextField textField;
public static void main(String[] args) {
HelloWorld frame = new HelloWorld();
frame.setSize(300,200); // Standaard = .setSize(0,0)
frame.createGUI();
frame.setVisible(true); // Standaard = setVisible(false)
}
private void createGUI() {
setDefaultCloseOperation(EXIT_ON_CLOSE); // Anders blijft het programma lopen tot je ctrl-alt-delete typt
Container window = this.getContentPane();
window.setLayout(new FlowLayout());
textField = new JTextField("Hello World !");
window.add(textField);
}
}
</source>
}}
Alle classes uit de swing-bibliotheek hebben een naam die begint met een J: JButton behoort tot Swing, Button tot AWT.
 
{{Code|
| Taal=Java
Informatie afkomstig van https://nl.wikibooks.org Wikibooks NL.
Wikibooks NL is onderdeel van de wikimediafoundation.