GUIBuilder in Netbeans


#1

Gibt es eine Möglichkeit, dem GUIBuilder zu sagen, das er NICHT von JFrame erben soll, sondern eine variable stattdessen benutzen soll? Weil ich probier die ganze Zeit hier rum, aber es klappt einfach nicht und ich brauch ne Variable, damit ich von außen drauf zugreifen kann. Mit neuem Objekt erstellen usw gehts ja nicht, da ich so ja ein neues Frame machen würde und das schon bestehende unberührt bliebe.


#2

Wozu musst du von außerhalb direkt auf die JFrame Instanz zugreifen?
Da ich Netbeans nicht benutzen kann ich leider auch nicht sagen ob man dem Builder das extends JFrame verbieten kann, denn grundsätzlich bin ich eig. gegen das Erweitern von JFrame. In 99,9% der Fälle ist das eher unschön/unnötig in meinen Augen.
Natürlich kannst du statt dem GUI Builder auch selbst den GUI Code schreiben und dann eben nicht von JFrame erben und sowieso alles besser machen als der Builder :stuck_out_tongue:
Die Frage wäre aber was du genau vor hast, vermutlich reicht es schon die main-Methode etwas abzuändern und dort einfach eine Instanz der generierte JFrameklasse zu erstellen und dem Controller dann einfach im Konstruktor zu übergeben ?!


#3

… wenn ich Kaffee trinken würde, bräuchte ich welchen, gibt es Alternativen?

so gehts
[spoiler]

//z.B.
private JFrame frame = new JFrame();
frame = (JFrame) SwingUtilities.getRoot(jPanel1);
frame.setTitle("neuer titel aber wie");
//jedenfalls so kannst du dir eine Variable zurechtlegen für das Frame, für das es im GUIBuilder ja keine Variable gibt.
//alternativ kannst dir ein JFrame anlegen und bastelst mit dem GUI Builder nur am ersten Panel rum, dann erbt das Panel und du hast deine f Variable

[/spoiler]