2009-10-23 3 views
8

Ich weiß, wie man die grundlegenden Kontrollen in Swing erstellt, aber zu Industriestandard-Anwendungsentwicklung kommend, fehlt mir die Fähigkeiten, sie zu tun.Wie machen wir Desktop-Java-Anwendungen nach Industriestandard?

Ich entwerfe eine kleine Java Swing-Anwendung. Anstatt für jeden Zweck eine JFrame zu erstellen, möchte ich Steuerelemente erstellen, anzeigen, ausblenden (wenn nötig), alles in nur einem Fenster.

Wie kann ich es tun? Ich bin ein Anfänger. Bitte zeigen Sie mir nette Web-Ressourcen zu den herkömmlichen Methoden der Desktop-Java-Anwendungen mit Swing.

+0

Diese [SO Frage] (http://stackoverflow.com/questions/458817/java-swing-libraries-tools-layout-managers) könnte hilfreich sein. – cetnar

Antwort

5

Ich empfehle Ihnen, NetBeans zu verwenden und ein Projekt mit der vorhandenen Vorlage "Swing Desktop Application" zu erstellen.

Es wird die grundlegende Infrastruktur für Ihre App einschließlich eines Hauptfensters mit einem Menü und Statusleiste mit einem Fortschrittsbalken, über Box, Event-Handler, usw. alle vorverkabelt erstellen.

Zum Beispiel ist der Fortschrittsbalken bereits so konfiguriert, dass er jede von Ihnen erstellte Aktionsaufgabe überwacht. Wenn Sie also einfach eine neue Aktionsaufgabe erstellen, erhalten Sie eine Fortschrittsleiste, die ausgeführt wird, wenn die Aufgabe ausgeführt wird , ohne es zu codieren. Für weitere Informationen siehe here.

+0

Das macht also eine normale Swing-App, richtig, keine Netbeans-basierte App? –

+0

@yar: Es wird eine standardmäßige Swing Application Framework-Desktop-Anwendung erstellen. Standardmäßig verwendet die IDE die NetBeans-GUI per drag and drop und erstellt Ressourcendateien für Sie, die Sie jedoch nicht verwenden müssen. Sie können die IDE so konfigurieren, dass sie sie nicht verwendet. Aber dann verlierst du die RAD GUI-Entwicklung. – JRL

+0

Sehr coole und interessante Sachen. Sollte ich jemals zurück nach Java gehen (jetzt mache ich einige UI in Mono Winforms), werde ich Netbeans überprüfen. Ich benutze Netbeans für alle meine bezahlten Gigs (Ruby on Rails und PHP). –

4

This ist das meistgelesene Tutorial auf Swing ohne Zweifel. Führen Sie das Tutorial von Anfang bis Ende durch, wenn Sie Zeit haben, um Swing zu lernen.

Gleichzeitig versuchen Sie, eine Kopie von JBuilder zu finden, um den Vorlagencode zu sehen, den er für Swing-Apps erstellt. Sie werden manuell mit Eclipse oder ähnlichem codieren, aber JBuilder kann Ihnen einige standardmäßige Vorgehensweisen zeigen. Wenn Sie keine Kopie erhalten, schauen Sie sich einige Swing-Plugins für Eclipse an. Versuchen Sie in jedem Fall, selbst mit dem Code in Kontakt zu bleiben: Die meisten UI-Editoren sind nur in den Vorschlägen hilfreich, die sie Ihnen geben.

2

Führen Sie das von yar vorgeschlagene Lernprogramm durch. Ich würde auch das ausgezeichnete Buch "Filthy Rich Clients" von Romain Guy und Chet Haase (zwei großen Namen in der Swing-Welt) empfehlen. Es bringt Ihnen bei, Apps zu erstellen, die gut aussehen.

2

Ich habe nicht viel damit gearbeitet, aber das Projekt Griffon versucht, das MVC-Muster für Swing-Anwendungen zu standardisieren. Es ist jedoch in der Groovy-Skriptsprache geschrieben, die dann auf der JVM ausgeführt wird.

+0

Griffon ist eigentlich hauptsächlich in Java geschrieben, aber es ist wahr, dass es eine gute Groovy-basierte DSL zum Schreiben von Ansichten bietet. Es ist jedoch auch wahr, dass Sie eine Griffon-Anwendung mit einer Kombination aus Groovy, Java, Clojure, Scala, Mirah und/oder Jython schreiben können. – aalmiray

0

JDock bietet ein Docking-Framework, mit dem Sie Ihre Anwendung in einem einzigen, in verschiedene andockbare Bereiche unterteilten Rahmen präsentieren können. Ich gestehe, dass ich es noch nie versucht habe.

0

Spring RCP ist eine, obwohl riskante Lösung. Es hat einige nette Eigenschaften und meiner Meinung nach funktioniert es ziemlich gut in den meisten Fällen. Die Dokumentation ist jedoch nahezu nicht vorhanden und die Zukunft des Projekts ist ungewiss. Es gibt zwar einige Benutzer (einschließlich mir), die sich RCP verschrieben haben, aber es wird wahrscheinlich nicht vollständig sterben.

6

Ich bin nicht sicher, wo ich das lese (alter Artikel), aber seit ich es gelesen habe, benutze ich es in allen kommerziellen Desktop-Anwendungen, die ich mache.

Als erstes, NetBeans, ist es die perfekte IDE für Java UI Design. Die anderen Eclipse-Plugins sind nicht so hilfreich oder leistungsstark.

Hier ist, wie ich es mache. Erstellen Sie ein neues Java-Projekt — nennen wir es MyComponents in diesem Projekt — erstellen Sie alle Ihre Komponenten, die Sie wollen Die Basis einer Komponente sollte eine JFrame oder eine JPanel sein. In diesem Beispiel werden wir JPanel wählen und es mjPanel

Weiter in der Entwurfsansicht, Drag & Drop alle Swing-Komponenten Sie wollen nennen. Machen Sie dann in der Quellenansicht alle Aktionen und die Logik.

Als nächstes ist der wichtigste Schritt, rechts Ihre Java-Datei klicken, unter Extras, wählt Zu Palette hinzufügen, dann in dem Fenster an, wo Sie sie setzen wollen, wie etwa Swing-Komponenten-Palette.

Um die Komponente, aus Menü Erstellen abzuschließen, wählen Sie reinigen und bauen, das Ihnen eine JAR-Datei im Projektordner/dist zu schaffen.

Ab jetzt, in jedem Projekt, das Sie diese Komponente verwenden möchten, schließen Sie einfach die Jar-Datei in Ihren Projektklassenpfad ein. Öffnen Sie die Swing-Komponentenpalette und Sie sehen Ihre neue Komponente.

So:

+0

Es scheint, dass Ihr Bild nicht mehr aktiv ist. Vielleicht ein Update? – aspiring

0

Die Java Look and Feel Design Guide bietet eine detaillierte Referenz über die Standards in User Interface Design mit Schaukel und Metall Look and Feel. Wenn Sie planen, diese Cross-Plattform l & f zu verwenden, empfehle ich Ihnen auf jeden Fall das Lesen.

Verwandte Themen