Konvertieren von Java GUI Builder .form-Dateien in den Quellcode?

8

Ich habe eine ziemlich umfangreiche Java-GUI-Anwendung mit vielen Formularfenstern erstellt, in denen die Einstellungen in .form-Dateien gesperrt sind. Ich frage mich, gibt es eine Möglichkeit, diese .form-Dateien in echten Java-Quellcode zu konvertieren oder umzuformatieren, den ich ändern kann?

Die GUI wurde mit Netbeans 6.5 erstellt.

    
Brock Woolf 23.04.2009, 12:16
quelle

3 Antworten

6

Nach meinem Verständnis werden die ".form" -Dateien nur vom Netbeans-GUI-Builder verwendet, um zu verfolgen, wo sich die GUI-Komponenten befinden. Wenn Sie Komponenten in der Entwurfsansicht hinzufügen, aktualisiert Netbeans automatisch die tatsächlichen Quelldateien (.java). Sie können tatsächlich diese .java-Dateien direkt ändern, um beispielsweise die Beschriftung einer Schaltfläche zu ändern. Wenn Sie dies innerhalb von Netbeans tun, werden die .form-Dateien verwendet, um die Quelldateien automatisch zu regenerieren Ihr Handbuch ändert sich.

Nachdem Sie die Entscheidung getroffen haben, die .java-Dateien manuell zu ändern, werden die .form-Dateien nach meiner Erfahrung nicht mehr synchronisiert und Sie können den Builder für Netbeans-GUI nicht mehr ordnungsgemäß verwenden.

    
Outlaw Programmer 23.04.2009, 19:55
quelle
4

kazanaki hat Recht, die Java-Dateien, die generiert werden, können geändert werden, aber die resultierenden .java-Dateien sind notorisch chaotisch, groß und schwer zu interpretieren. Außerdem können Sie einige Dinge nicht ändern (wie in den Kommentaren in der generierten .java-Datei angegeben), ohne matisse nutzlos zu machen, weil es erwartet, dass die Datei Dinge in einer bestimmten Weise hat. Davon abgesehen, wenn Sie darauf achten, nicht auf Matisse Zehen treten, können Sie Code weg und es wird Ihren Code nicht berühren, was nett ist.

Outlaw hat auch Recht, wenn Sie etwas ändern, das bereits in Matisse's Perview ist, wird es überschrieben. Alle Änderungen, die Sie außerhalb von matisse vornehmen, müssen außerhalb von Elementen liegen, die von der XML-Datei abgedeckt werden, die matisse zur Generierung des Codes verwendet.

Ich habe so etwas schon einmal mit begrenztem Erfolg versucht und habe schließlich die Benutzeroberfläche umgeschrieben, um diese verrückten Kopfschmerzen zu vermeiden.

    
Ichorus 23.04.2009 20:03
quelle
1

Ich kann die Quelle bearbeiten, ich habe die Lösung gefunden. Das Problem war, dass ich das "AbsoluteLayout" im GUI-Builder verwendete. Netbeans erstellte eine verborgene AbsoluteLayout-Klasse, die sich in den .form-Dateien befand. WENN ich die .form-Dateien löschte, würde das Projekt nicht länger bauen. Die Lösung war, das Formular in das "FreeForm" -Layout zu ändern und dann konnte ich die .form-Dateien löschen und die GUI-Builder-Kommentare entfernen.

Danke für die Hilfe Jungs, ich gebe euch beide +1.

    
Brock Woolf 24.04.2009 09:00
quelle