Swing Netbeans 7.1 keine DesktopApplication mehr möglich ?

noobee

Aktives Mitglied
hallo#

ich habe bisher immer so kleinste projekte mit netbeans desktopapplication gemacht. da hatte man eben schön ein paar buttons, labels & co, welche man nur in die forms "ziehen" musste und ein wenig mit code belegen konnte.
für mich als anfänger recht einfach zu verstehen 😉

jedoch ist seit netbeans 7.1 diese desktopapplication weg (oder swing??). wie kann ich denn jetzt so eine desktopapplication erstellen ohne das form oder die buttons usw selbst zu schreiben? ???:L
 
wie kann ich denn jetzt so eine desktopapplication erstellen ohne das form oder die buttons usw selbst zu schreiben? ???:L

gar nicht ... lerne lieber wie man anstädige GUIs programmiert anstatt dich auf so einen möchtegern click-gui-builder zu verlassen ... weil was da als code rauskommt ist echt zum kotzen ... extrem unperformant ... und lässt sich nur schwer optimieren ...
außerdem kann der GUI-builder im notfall daraus selbst auch keine gui mehr erzeugen ... das geht nur mit einem speziellen file ... und dann blickt keiner mehr durch ...
also lass lieber die finger von sowas und lern richtig AWT und Swing ...
 
gar nicht ... lerne lieber wie man anstädige GUIs programmiert anstatt dich auf so einen möchtegern click-gui-builder zu verlassen ... weil was da als code rauskommt ist echt zum kotzen ... extrem unperformant ... und lässt sich nur schwer optimieren ...

Wenn eine um etwas auszuprobieren oder zum testen, dann ist ein GUI-Builder ziemlich praktisch. Dabei muss der Code auch nicht schön oder performant sein. Wobei ich mich nicht erinnern kann, dass ich jemals ein Performance-Problem mit GUI Komponenten hatte. Die Probleme liegen meist in der Logik dahinter.
Der Windows Builder für Eclipse produziert einen, für meine Meinung nach, recht passablen Code. Den kannst du danach dann sogar optimieren wenn du es wünscht.
 
Das ist ein sehr merkwürdiger Bug. Ich hatte den bei 7.0 und bei der Installation von 7.1 waren dann wieder die Swing Vorlagen da. Am besten mal deinstallieren und alle möglichen Datein, die zu Netbeans gehören, auch löschen. Dann neu installieren, könnte eventuell helfen.
 
ich find den netbeans gui builder recht gut. liegt auch daran dass ich lange zeit mit delphi gearbeitet habe. diese eclipse plugin gui builder sind meiner meinung nach nicht so gut wie der netbeans also einfach nur von der usability.bin jetzt auch nicht so ein profi wie die anderen aber ich finds recht altertümlich 2012 die gui komplett selber zu schreiben ohne gui builder. es ist nicht cooler,frisst einfach nur zeit und sieht (jedenfalls bei mir) einfach nur schrottig aus ohne gui builder. man sollte sich das leben nicht zu schwer machen. und ob das jetzt performanter ist oder nicht, spielt für den TO doch nun wirklich keine rolle. das is ne ethische frage für profis, ob gui builder oder nicht. aber nen anfänger der sich die grundlegenden sachen über awt und swing aneignet und dann nen guibuilder benutzt find ich ehrlicherweise 2012 absolut ok.
 
Ich finde vor allem, es kommt darauf an, welches Layout man in GUI-Buildern verwendet. Ohne Layout bspw. kann imo gar nicht so viel schlechter Code entstehen (Bis auf der Tatsache, das "Null-Layout" ansich schon verdammt schlecht ist). Oder etwa BorderLayout oder FlowLayout. Kommt dann allerdings mal ein etwas aufwendiger oder "besserer" oder vielfältiger LayoutManager, wie etwa GridBagLayout oder mein persönlicher Favorit JGoodies FormLayout zum Einsatz, dann wird der Code imho schon schnell "dirty" und enthält viel unnützes.

Einmal richtig FormLayout gelernt, verstanden, dann ist man imo ganau so schnell wie mit GUI-Buider, evtl. sogar schneller, so wie ich.
 
gerade bei GridBagLayout produzieren die meisten GUI builder einen haufen müll ... macht den code extrem unleserlich *ohne passenden builder und files steigt man überhaupt nicht mehr durch* ... ziemlich unperformant *meinte damit eigentlich nur das unnötige erzeugen irgendwelche objekte* trägt nur zur "schlampigkeit" bei ...

ich sage auch nicht das es cool wäre keinen gui-builder zu verwenden ... aber wenn mans einmal richtig gelernt hat gehts deutlich effizienter als mit nem gui-builder ... und vor allem deutlich sauberer und man weis hinterher auch noch was der code bewirt ... anstatt vor so nem hässlichen konstrukt zu sitzen und dann nur zu erahnen : ah das könnte die gui sein ...
 
Java:
jPanel3Layout.setHorizontalGroup(
            jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPanel3Layout.createSequentialGroup()
                .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(jLabel1)
                    .addComponent(jLabel3)
                    .addComponent(jLabel11))
                .addGap(10, 10, 10)
                .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(textFehlerBeschreibung, javax.swing.GroupLayout.PREFERRED_SIZE, 318, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addGroup(jPanel3Layout.createSequentialGroup()
                        .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
                            .addComponent(textFehlerNummer, javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(textFehlerFach, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, 34, Short.MAX_VALUE))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(buttonMoDo)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(buttonFr))))
            .addGroup(jPanel3Layout.createSequentialGroup()
                .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(jLabel2)
                    .addComponent(jLabel4)
                    .addComponent(jLabel5))
                .addGap(18, 18, 18)
                .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                    .addComponent(buttonFehlerSpeichern, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addComponent(textFehlerSonstiges)
                    .addComponent(textFehlerKommentar, javax.swing.GroupLayout.DEFAULT_SIZE, 246, Short.MAX_VALUE)
                    .addComponent(textFehlerZeit, javax.swing.GroupLayout.Alignment.TRAILING))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(buttonFehlerZeit, javax.swing.GroupLayout.DEFAULT_SIZE, 86, Short.MAX_VALUE))
            .addGroup(jPanel3Layout.createSequentialGroup()
                .addComponent(jPanel4, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addContainerGap(110, Short.MAX_VALUE))
        );
        jPanel3Layout.setVerticalGroup(
            jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPanel3Layout.createSequentialGroup()
                .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jLabel1)
                    .addComponent(textFehlerNummer, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(buttonMoDo)
                    .addComponent(buttonFr))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jLabel3)
                    .addComponent(textFehlerFach, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jLabel11)
                    .addComponent(textFehlerBeschreibung, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jLabel2)
                    .addComponent(textFehlerKommentar, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jLabel4)
                    .addComponent(textFehlerSonstiges, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jLabel5)
                    .addComponent(textFehlerZeit, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(buttonFehlerZeit))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                .addComponent(buttonFehlerSpeichern, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(jPanel4, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
        );

Schon geil sowas 😛
 
mhh, ok. dann werd ich mal schauen, was so mit eclipse und dem "WindowBuilder Pro" geht.

schön war es halt, weil man netbeans "desktopapplication" einfach nutzen konnte ohne noch irgendwas eibinden zu müssen oder so. weiß nicht, ob ich bei eclipse dann noch zusätzlich irgendwie umständlich das "WindowBuilder Pro"-ding einbinden/implementieren muss. das wäre dann wieder mehr unwissendes gepfusche bis es funzt -.-

btw: für eben so kleine dinge war desktopapplication nice, weil man gleich anfangen konnte und was gesehen hat !! form öffnen, butten, label drauf, mit code belegen -> fertig - und da kommt es nicht im geringsten auf performance an !!!!


EDIT: und da gehts schon los :autsch::autsch:

Cannot complete the install because one or more required items could not be found.
Software being installed: GWT Designer 2.5.0.r37x201202061331 (com.google.gdt.eclipse.designer.feature.feature.group 2.5.0.r37x201202061331)

oder

Cannot complete the install because one or more required items could not be found.
Software being installed: WindowBuilder XML Core (requires Eclipse WTP/WST) 1.3.0.r37x201202052344 (org.eclipse.wb.core.xml.feature.feature.group 1.3.0.r37x201202052344)

laut anleitung soll ich alles auswählen -.- brauch ich GWT für windowbuilderpro auch ?

EDIT2: hab die anleitung genutzt: https://developers.google.com/java-dev-tools/wbpro/installation/updatesite_3.7
 
Zuletzt bearbeitet:
Das ist ein sehr merkwürdiger Bug. Ich hatte den bei 7.0 und bei der Installation von 7.1 waren dann wieder die Swing Vorlagen da. Am besten mal deinstallieren und alle möglichen Datein, die zu Netbeans gehören, auch löschen. Dann neu installieren, könnte eventuell helfen.

Hast du das schon ausprobiert? Scheinst Eclipse ja nicht wirklich zugetan zu sein. =)
 
naja wenn ich 7.1 komplett neu inst auf ner neuen maschine ist desktopapplication nicht mit dabei... oder meintest du das anders ?
 

Zurück
Oben