Swing wie designt ihr eure gui?

Blagg Dogg

Mitglied
hiho zusammen,

ich wollte mal fragen, wie bzw. womit ihr eure guis designt? programmiert ihr sie von hand oder nutzt ihr ein tool (wie den gui builder von netbeans)?

eigentlich würde ich ja nur noch den gui builder benutzen. aber 1. sieht die fertige gui dann doch meistens anders aus und 2. kann man den erzeugten code nicht ändern (außer in einem externen editor, aber dann kann es wiederum probleme in netbeans geben).

also, wie macht ihr das?

grüße :)
 

pl4gu33

Top Contributor
ich machs ebenfalls manuell .... zu Anfang isses halt erstmal ein gewurschtel :D aber wenn man langsam die Eigenschaften der ganzen Layouts kennt, kann man schnell gute Layouts basteln :)
 

mla.rue

Bekanntes Mitglied
Wenn du Anfänger bist, dann fang ersteinmal von Hand an (Stift, Stück papier und malen, wenn das 'Design' hast, kannst dich an den LayoutManagern austoben). Wenn es draufhast, kannst zu NetBeans wechseln und dann schränkt dich auch ein "fester" Code (den es nicht gibt) auch nicht mehr ein.

Wenn man nen Button, nen Textfeld und nen Label hat, gehts von Hand. Hast du aber zig Label, Textfelder, Textareas, Checkboxen, Comboboxen, Contextmenü, TreeTables, Trees und Tables und und und schreibst dich von Hand dumm und dämlich (mal Spaßeshalber eine komplexe GUI hier gemacht... nen Programmierer mit 5 Jahren Erfahrung von Hand, ich, Azubi, in NetBeans. Er: 5 Tage, ich: 2 Tage. Meine GUI hatte keine Einschränkungen, sah sogar besser aus wegen des flexiblen FreeLayouts, nicht verwechseln mit NullLayout, einzig mein Code hatte mehr Zeilen, da NetBeans das FreeLayout mit verschachtelten GroupLayouts realisiert. Bei 1TB Festplatten und 8GB RAM aber kein Problem mehr heutzutage). Man sollte bei nem WYSIWYG Editor aber schon wissen, was man macht. Letztendlich ist es aber eine reine Geschmackssache.

Btw was dein "anderes" Aussehen betrifft. Unter Linux z.B. ist NetBeans mit Metal LAF installiert und wird ausgeführt, man designt die GUI also auch in Metal. Wird die Anwendung ausgeführt, so geschieht dies ersteinmal im nativen GTK+. Da jetzt aber jeder Container in NetBeans standardmäßig mit dem flexiblen, aber undynamtischen FreeStyle Layout kommt, verhunzelts das Aussehen der GUI. Kannst du umgehen, indem du das Layout schön überall einstellst, oder NetBeans z.B. auf Nimbus umstellst und die Anwendung mit Nimbus startest.

Achja, wenn es um das Schreiben von kleinen, einfachen GUIs geht, ziehe ich die "von Hand" Methode vor.
 

Kaffeebohn

Bekanntes Mitglied
Ich benutze Netbeans um die Oberflächen zu malen, und kopiere mir dann einfach den generierten Layout-Teil rüber in die entsprechende Klasse, da ich persönlich ansonsten nicht so der Netbeans-Freund bin. Das klappt für mich wunderbar, wenn man sich mal an die Eigenheiten von dem Gui-Designer gewöhnt hat.
 

renwal

Aktives Mitglied
Ich benutze Eclipse mit WindowBuilder, um größere GUIs zu erstellen, und bessere dann von Hand nach. Bei Projekten mit mehr als 100 Komponenten spart man da doch definitiv Zeit. Die Ergebnisse sind meist ganz zufriedenstellend, nur kleinere Korrekturen muss ich dann von Hand vornehmen.
Etwa mit JLayeredPanes hat der WindowBuilder es nicht ganz so.
 

Fab1

Top Contributor
Es gab vor ein paar Monaten bereits mal einen Thread mit mehreren Seiten dazu, den ich leider nicht mehr finden konnte.

Grundsätzlich muss man das aber selbst entscheiden der eine macht es mit GUI-Builder und der andere per Hand.

Ich mach es immer mit der Hand. Anfangs wie oben bereits erwähnt aufzeichnen hat bei mir viel geholfen.
 

OSBI_Fan

Mitglied
Hallo Blagg Dogg,

bisher habe ich etwas Erfahrung mit der Netbeans IDE und mit XDEV3 gesammelt.

Beim Konzept von XDEV3 behält der Entwickler die volle Kontrolle über die Anwendung (manuell direkt und oder automatisiert). LinK:

XDEV Software Corp. - Startseite

Basisfunktionen:
  • GUI-Builder
  • Formular-Generator
  • Master-Detail Generatoren
  • Einfacher Umgang mit Layouts
  • Menü-Assistent
  • Mehrsprachige Oberflächen
  • Automatisiertes Event-Handling
  • Eigene Komponenten entwickeln - GUI-Beans
  • bidirektionale GUI-Entwicklung möglich
Die Entwicklungsumgebung ist so konzipiert, das Du Oberflächen wie mit einem Grafikprogramm designen kannst. Alle GUI-Komponenten lassen sich per Drag&Drop auf die Arbeitsfläche einfügen und dort pixelgenau positionieren. Formulare lassen sich so blitzschnell designen und sogar aus Tabellen heraus automatisch generieren. Auch aufwändige Master-Detail Ansichten sind verblüffend einfach zu erstellen. Dank eines innovativen Layout-Assistenten ist auch der Umgang mit Layout-Manger simpel. Die Basis ist Java Swing. Der entsprechende Java Code wird in Echtzeit generiert und im Code-Editor ausgegeben.

Um eine Datenbankabfrage durchführen zu können und damit die virtuellen Tabellen mit Daten zu befüllen unterstützt ein Query-Assistent. Über die im Query-Assistenten definierte SQL Abfrage wird datenbankunabhängiger Java Code generiert. Änderungen oder Erweiterungen können danach wahlweise im Assistenten oder direkt im generierten Quellcode vorgenomen werden. Code-Änderungen werden vom Query-Assistenten automatisch registriert und beim nächsten Aufruf des Assistenten automatisch verarbeitet (siehe Online-Dokumentation oder Forum - deutsche Community).

Das XDEV 3 RAD-Konzept stellt eine Vielzahl wichtiger Basisfunktionen für die Entwicklung von Datenbank-Anwendungen und grafischen Oberflächen (GUI) zur Verfügung, die Java Entwickler gewöhnlich mit großem Aufwand selber programmieren müssen, u.a. Databinding, Verarbeitung von Abfrageergebnissen (Resultsets), Transaktions-Management und Daten-Verschlüsselung. Darüber hinaus bietet das Framework eine kompakte Funktionsbibliothek (XAPI) mit einer Vielzahl an Funktionen, die den Zugriff auf Datenbanken, Dateien, den Arbeitsspeicher, Oberflächen und externe Applikationen extrem erleichtert.

Deployment auf Ant-Basis:
XDEV 3 bietet ein vollautomatisiertes Deployment auf Basis von Apache Ant, mit dem im Handumdrehen neue Builds erstellt werden können, ohne dafür extra Scritps schreiben zu müssen. Erst beim Projektabschluss wird entschieden, wie die Anwendung betrieben werden soll. Über den Deployment-Assistenten kann man aus ein und derselben Codebase heraus wählen zwischen:

Java Applikation:
Rich Internet Application (Java Applet)
Java Webstart-Applikation

Das XDEV Application Framework ist Open Source. Die RAD-Features von XDEV 3 machen die Anwendungsentwicklung mit Java revolutionär einfach und ersparen eine Menge an Programmierarbeit, was sich wie ein Turbo auf die Entwicklung auswirkt. Da XDEV 3 ähnlich funktioniert wie Access, Oracle Forms und andere 4GL-Tools, ist der Einstieg in XDEV 3 i.d.R. besonders einfach.

XDEV 3 ist völlig lizenzkostenfrei.
Grüße,

OSBI_Fan

OSBI = Open Source Business Intelligence
 
Zuletzt bearbeitet:

Cola_Colin

Top Contributor
Inzwischen nur noch von Hand unter Verwendung von JGoodies-Binding.

Früher habe ich mal mit dem Netbean-Guibuilder gearbeitet, Projekte von damals sind mir inzwischen nur noch ein Graus, da ich Netbeans nicht mal mehr installiert habe, mal schnell was ändern geht bei sowas dann einfach nicht mehr.
Bei händischen Guis ist das kein Problem, welches IDE man gerade verwendet. Imho der größte Vorteil.
 

Oben