Eigene GUI mit Swing
Mit JayMo lässt sich sehr schnell und schlank eine kleine Swing-Anwendung realisieren.
Hier die einfachste Swing-Anwendung
Swing_Main.run
Okay, ein paar Details sollten noch gesetzt werden:
Swing_Main( 600, 400, "My Swing-App" ).run
"Swing_Main" stellt die Basis für Swing und das Haupt-Fenster bereit. In dieses Fenster lassen sich verschiedene Komponenten platzieren. Mit ".run" wird die Swing-Anwendung dann gestartet.
Komponenten
In dies leere Main-Fenster lassen sich verschiedene Komponenten platzieren. Im nachfolgenden Beispiel wird z.B. ein Button eingefügt.
main = Swing_Main( 600, 400, "My Swing-App" )
b1 = Swing_Button( "Click me!" )
main.add( b1 )
main.run
Layout
Das Gitter-Layout ist ein sehr einfaches Layout, welches eine feste Matrix mit X * Y Feldern bietet.
main = Swing_Main( 600, 400, "My Swing-App" )
button1 = Swing_Button( "Top left" )
button2 = Swing_Button( "Top right" )
button3 = Swing_Button( "Bottom left" )
button4 = Swing_Button( "Bottom right" )
grid = Swing_LayoutGrid( 2, 2 )
grid.add( button1, button2, button3, button4 )
main.add( grid )
main.run
Alternativ sind noch weitere Layouts verfügbar. Vor allem sei das das "Flex"-Layout erwähnt, welches viele Möglichkeiten zum exakten Positionieren der Komponenten bietet.
Events
Jede Komponente bieten verschiedene Events, auf die reagiert werden kann.
Ein "Swing_Button" besitzt z.B. das Event "@select", welches beim Anklicken aktiviert wird.
main = Swing_Main( 600, 400, "My Swing-App" )
b1 = Swing_Button( "Click me!" )
b1::@select
Print "Click!"
main.add( b1 )
main.run
Dialog
Zur grafischen Ausgabe eignet sich ein Nachrichten-Dialog, der dem Hauptfenster zugeordnet wird:
main = Swing_Main( 600, 400, "My Swing-App" )
b1 = Swing_Button( "Click me!" )
b1::@select
Swing_DialogMessage( main, "Clicked!" ).show
main.add( b1 )
main.run