# Netbean GUI Builder Alternative



## FEARftw (30. Jan 2015)

Guten Tag die Damen  und Herren.

Ich hätte eine Frage bezüglich eines GUI Designers für Netbeans. Der in Netbeans integrierte GUI Builder Mantis nervt mich damit, dass ich den Code der erzeugt wurde nicht selber bearbeiten kann.
Daraufhin habe ich mich mit dem WindowBuilder von Eclipse auseinander gesetzt, und festgesellt, das er auf meinem Mac teilweise jeden dritten Klick einfach abstürzt und ich sogar Eclipse neustarten muss. Und das nervt tierisch.
Deswegen sollte ich mal in die Runde Fragen, ob jemand noch einen anderen GUI Builder für Netbeans kennt, wo man seinen Code auch selber bearbeiten kann?


----------



## wolfgang63 (31. Jan 2015)

hey,
ich arbeite mit JavaFX und benutze den den externen Scene Builder von Oracle.
Bin mir aber nicht sicher ob es den auch für den MAC gibt.


----------



## michaels (31. Jan 2015)

Hallo,
ich arbeite sehr gerne mit dem NetBeans GUI Designer. Es ist auch möglich (auch wenn ich es sehr selten nutze) den generierten Code zu ändern. Einfach einen Rechtsklick auf die Komponente machen und "Customize Code" wählen.
Viele Grüße


----------



## Tobse (31. Jan 2015)

michaels hat gesagt.:


> Hallo,
> ich arbeite sehr gerne mit dem NetBeans GUI Designer. Es ist auch möglich (auch wenn ich es sehr selten nutze) den generierten Code zu ändern. Einfach einen Rechtsklick auf die Komponente machen und "Customize Code" wählen.
> Viele Grüße



Bingo. Noch dazu kannst du bei fast jeder Wählbaren Einstellung im "Properties" Fenster "Custom Code" auswählen. Man hat eigentlich volle Kontrolle.

Der Grund, warum du den Code nicht direkt im "Source"-Tag bearbeiten kannst ist, dass der Builder immer wissen muss, welcher Code zu welcher Komponente gehört. Wenn er das nicht weiss, kann er nicht sicherstellen, dass das Layout richtig aufgebaut wird.
Wenn du aber über die genannten Möglichkeiten eigenen Code angibst kannst du so ziemlich alles beeinflussen.

P.S.: Es empfiehlt sich ohnehin folgendes: Wenn du eine Komponente hast, welche öfter in deinem Programm vorkommt, schreibe eine eigene Klasse dafür (z.B. CancelButton extends JButton). Diese kannst du dann - sofern sie einen void-Konstruktor hat - per Drag 'n' Drop im GUI Builder verwenden (sie wird auch direkt so engezeigt, wie due es gecodet hast).


----------



## FEARftw (31. Jan 2015)

Ja den SceneBuilder gibt es auch für Mac. Ich arbeite auch mit JavaFX in manchen Projekten. 

Das mit dem Custom Code einfügen kannte ich auch schon, ist aber auch nicht das Wahre. Ich würde z.B. auch gernen die Definition meiner Komponenten von unten nach ganz oben in der Datei bringen und das ist auch nicht möglich, denn wenn ich Forms mit mehreren hundert Code Zeilen habe, möchte ich nicht immer ganz runter Scrollen müssen, meien Komponenten zu suchen.


----------



## michaels (31. Jan 2015)

Hm, wozu musst du denn deine Komponenten "suchen"?
Mich hat es bisher nie gestört, wo NetBeans den Code für die Komponenten platziert und ehrlich gesagt, wüsste ich auch nicht warum mich das interessieren soll ;-) daher meine Frage.
Ich habe mir angewöhnt die Variablen vernünftig zu benennen und nutze dann einfach die Code Completion.

Noch eine kleine Ergänzung zu Tobse Post. Man kann sogar komplett eigene Grundkomponenten mit NetBeans erstellen, die dann wiederverwendet werden können und deren Nutzung wie mit einem Panel ermöglichen. Also z.B. ToolBar, Panel o.ä. platzieren. Die Komponenten können dann fix sein und man stellt ein Panel zur Verfügung, welches dann via GUI Builder mit weiteren Komponenten versehen werden kann.


----------



## FEARftw (31. Jan 2015)

Ja vernümpftig benenen ist wichtig das stimmt. Auf der anderen Seite ist stehen auch in jeder anderen Klasse die Varaibalen ganz oben. 
In andern Builder wie dem WindowBuilder in Eclipse kann ich ja auch alle Komponenten bearbeiten.


----------



## Tobse (31. Jan 2015)

Wenn du hunderte Zeilen GUI Code (abgesehen vom generierten Layout-Code) in einer Datei hast, ist vielleicht etwas nicht ganz richtig.
Aber dennoch:

Zu 100en Zeilen Code gehören auch ziemlich viele GUI-Elemente (mal bei den ganzen Input's, Labels u.s.w angefangen). Deine Frage lässt sich also wunderbar umdrehen: Wenn du den Code bearbeiten willst, warum musst du dann durch den ganzen Code für die Kompontenten- und Layoutdefinition scrollen?

Welchen GUI Builder man benutzt ist meiner Meinung nach wirklich Geschmackssache. Der von NetBeans ist aber nach meiner Erfahrung einer der besten (auch besser als z.B. der von VS).
Wenn du dich an Details wie "wo genau in der Datei landet der generierte Code" aufhängst, wirst du wahrscheinlich keine IDE finden, die dich zufriedenstellt.


----------

