Welches Framwork benutzen?

Hallo,
ich möchte ein Programm schreiben und habe bis jetzt nur mit der Console Erfahrungen in Java gemacht. (und mit Androidgeräten, aber das ist eine andere Geschichte)
Nun möchte ich ein GUI Framework nutzen um etwas zu entwickeln.

  • Aus diesem Grund möchte ich euch fragen, ob sich die Frameworks groß unterscheiden und Vorteile/Nachteile bieten.
  • Unter anderem hätte ich außerdem noch die Frage, ob man das Design des ganzen Guis ändern kann, also den schließen/minimier-button.
  • Gibt es außerdem noch ein Programm wie bei c# bei den man das Design mit einem Programm erstellen kann?

Wäre nett, wenn ihr mir bei der Auswahl helfen könntet.

Für Java gibt es derzeit 3 Optionen:

Swing.
Swing ist eigentlich tot, aber es gibt sehr viele Beispiele, Dokumentation und Leute, die sich damit auskennen. Leider kenne ich keinen guten GUI-Builder.

SWT.
Das ist das GUI-Framework von Eclipse. Das ist “erwachsen” und auch weit verbreitet. Allerdings holt man sich damit auch die Eclipse-Infrastruktur mit in’s Projekt. Für Anfänger vielleicht nicht so günstig.

JavaFX.
Das ist der offizielle Nachfolger von Swing. Es gibt einen GUI-Builder (der aber nicht mehr von Oracle selbst gepflegt wird) und es benutzt von haus aus die Frame-Darstellung des gerade laufenden Fenstermanagers (Mehr Einfluss sollte man nicht nehmen…).

Ich empfehle mal ein paar SWT und JavaFX-Tutorials durchzuarbeiten und danach zu entscheiden.

bye
TT

Na dann sollte man zur Vollständigkeit aber bitte noch mindestens AWT (bildet die Basis des gesamten GUI-Systems in Java, ohne das geht schon mal überhaupt nichts) und das recht verbreitete GWT erwähnen.
Außerdem gibt auf die nun insgesamt 5 genannten aufbauende Frameworks. Google dürfte helfen.

Zu den drei Fragen:
1.) Unterschiede der Java GUI-Frameworks - hier dürfte Google wohl weiter helfen
2.) eigenes Design: JA - Java bietet dafür zwei Möglichkeiten: einen Frame der grundlegende Dinge wie eine Title-bar und damit auch die drei bekannten Button anbieten, und ein Window das ohne alles kommt auf dem man sich dann nach belieben austoben kann
3.) das nennt sich GUI-Builder und gibt es für die bekannteren Frameworks in mehreren Varianten