GUI-Programmierung

Status
Nicht offen für weitere Antworten.
W

wersi1977

Gast
Hallo zusammen,

mich würde interessieren, auf welche Weise man möglichst übersichtlich (auch für größere Projekte) bei der GUI-Programmierung vorgehen sollte.
D.h. Wie wird im Allgemeinen gekapselt? Werden die Listener grundsätzlich in eigene Klasse verlagert? Oder arbeitet man lieber mit Adaptern? Welches Layout hat sich im Allgemeinen durchgesetzt? und und und
Leider gehen die Antworten auf diese Fragen bei der "Standardliteratur" (Java lernen, Java von Adison Wesley, Grafik Programmierung mit Swing) ein wenig auseinander, daher würde mir auch ein Buchtipp helfen.

Vielen Dank für ein paar Antworten oder Anregungen
 

hupfdule

Top Contributor
wersi1977 hat gesagt.:
Werden die Listener grundsätzlich in eigene Klasse verlagert? Oder arbeitet man lieber mit Adaptern?
Kann man so nicht wirklich sagen. Ist auch in großen Projekten noch von Fall zu Fall unterschiedlich.
Im Groben ist es in der Regel so: Je größer ein Projekt ist, um stärkeren Gebrauch macht man von Interfaces, abstrakten Klassen, Design Patterns, etc.
In kleinen Projekten ist vieles einfach Overkill, in großen Projekten ist das der einzige Weg die geplante Architektur wirklich aufrecht zu erhalten. Das bezieht sich aber nicht nur auf GUI-Entwicklung, sondern auf jede Software.

Welches Layout hat sich im Allgemeinen durchgesetzt?
Meinst du, welchen LayoutManager? Auch das ist Geschmackssache. Ich für meinen Teil finde alle, die bei Java bereits dabei sind, richtig schlecht. Ich verwende daher das FormLayout von JGoodies. Damit ist es deutlich leichter ansprechende Oberflächen zu erstellen und vor allem leichter diese dynamisch zu verändern.

Aber auch hier, von Fall zu Fall unterschiedlich. Kann man so nicht sagen, dass man in großen Projekten da anders vorgeht, als in kleinen.
 

L-ectron-X

Gesperrter Benutzer
hupfdule hat gesagt.:
Ich für meinen Teil finde alle, die bei Java bereits dabei sind, richtig schlecht.
Kann ich nicht nachvollziehen. Jeder der im SDK angebotenen LayoutManager hat seine Vorzüge, wenn man versteht sie richtig auszunutzen.
 

Jango

Gesperrter Benutzer
L-ectron-X hat gesagt.:
hupfdule hat gesagt.:
Ich für meinen Teil finde alle, die bei Java bereits dabei sind, richtig schlecht.
Kann ich nicht nachvollziehen. Jeder der im SDK angebotenen LayoutManager hat seine Vorzüge, wenn man versteht sie richtig auszunutzen.

Seh ich genauso. Allerdings stößt manch einer bei der Verwendung des GridBag... bspw. schnell an seine Grenzen.
Aber für solche Fälle gibts ja noch das "NULL"- Layout. Und das ist doch bei Java auch dabei... :wink:
 
W

wersi1977

Gast
Wann sollte denn das NULL-Layout zum einsatz kommen?
Oder gibt es gar Progger die diese Variante grundsätzlich verwenden?
 

The_S

Top Contributor
jango hat gesagt.:
Aber für solche Fälle gibts ja noch das "NULL"- Layout. Und das ist doch bei Java auch dabei... :wink:

Ich hoffe mal der ;) soll daraufhin weißen, dass es sich hierbei um einen Scherz handelt. Das null-Layout sollte nicht verwendet werden, da die Componenten je nach OS (sogar schon bei unterschiedlichen Windows-Systemen) verzerrt dargestellt werden können.

Ich verwende bei komplexen GUIs gerne das Form-Layout von www.jgoodies.com . Damit bekommt man eigentlich alles hin, was man möchte. Ansosnten kann man sich auch mal das TableLayout anschauen,.
 

JAVAn00b

Bekanntes Mitglied
Hi,

zurzeit programmiere ich guis in panels. das heißt ich habe 1 frame und rufe immer die panels die extern gelagert sind auf. es ist ziemlich sinnvoll wenn man viele GUI's hat. Man kann auch mit Internal Frame arbeiten ist eigentlich egal, mit Internal Frame hast halt in einem Fenster noch ein Fenster.

MFG
 

Jango

Gesperrter Benutzer
Hobbit_Im_Blutrausch hat gesagt.:
jango hat gesagt.:
Aber für solche Fälle gibts ja noch das "NULL"- Layout. Und das ist doch bei Java auch dabei... :wink:

Ich hoffe mal der ;) soll daraufhin weißen, dass es sich hierbei um einen Scherz handelt. Das null-Layout sollte nicht verwendet werden, da die Componenten je nach OS (sogar schon bei unterschiedlichen Windows-Systemen) verzerrt dargestellt werden können.

Ich verwende bei komplexen GUIs gerne das Form-Layout von www.jgoodies.com . Damit bekommt man eigentlich alles hin, was man möchte. Ansosnten kann man sich auch mal das TableLayout anschauen,.

Natürlich tut er das!!!! Hast den Sinn richtig verstanden. Das mit der Verzerrung stimmt auffallend. Ich glaube dafür wurden Layout-Manager erfunden, nee? :wink:
 

Campino

Top Contributor
Ich verwende sehr gerne das GridBagLayout. Das ist zwar etwas knifflig, aber man bekommt auch komplizierte Sachen hin und man muss keine anderen Layouts mit in die fertigen Programme packen. Insbesondere bei managern von Drittanbietern stößt man da schnell an grenzen: Sobald auch nur ein GPL-LayoutManager verwendet wird, muss das ganz Projekt GPL werden. Und erklärt das mal eurem Chef...
Wenn eine GUI so simpel ist, dass ein einfaches GridLayout oder so reicht, verwende ich dieses natürlich, statt trotzdem das GridBag zu nehmen ;)

Ansonsten mache ich es immer so, dass ich die Listener direkt beim anhängen definiere, dort dann aber nur EINE Methode aufrufe. Diese liegt meistens in einer Extra-Klasse, die nur Ereignisprozeduren enthält.

Code:
button1.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
controller.doSomething();
}});

Das würde ich einem Anfänger, der sich dann in der Vielzahl an Klammern usw. verfängt, allerdings nicht empfehlen...eine IDE, die in der normalen Codeansicht die Möglichkeit bietet, den Kram auszublenden, ist da auch ganz praktisch...die Methode hat also auch Nachteile...
 

AlArenal

Top Contributor
Campino hat gesagt.:
Insbesondere bei managern von Drittanbietern stößt man da schnell an grenzen: Sobald auch nur ein GPL-LayoutManager verwendet wird, muss das ganz Projekt GPL werden. Und erklärt das mal eurem Chef...

Ich weiß ja nicht was für krude LayoutManager du dir so zusammensuchst. Mit TableLayout und FormLayout hast du das Problem jedenfalls nicht und alle anderen dürften eine seeeehr untergeordnete Rolle spielen.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
M Java Programmierung Aufgabe Anfänger Java Basics - Anfänger-Themen 1
F Automat-Programmierung Java Basics - Anfänger-Themen 30
N Lambdas, Methodenref, fkt Programmierung ? Java Basics - Anfänger-Themen 10
districon Dynamisch Programmierung/Backtracking/Memoization Java Basics - Anfänger-Themen 3
S Buchstaben Programmierung Bedeutung Java Basics - Anfänger-Themen 4
S Hilfe bei Programmierung einer Hotelabrechnung Java Basics - Anfänger-Themen 5
enjoykimii Strukturierte Programmierung Hilfe Java Basics - Anfänger-Themen 29
A Frage zur programmierung Java Basics - Anfänger-Themen 12
Nerdinfekt Programmieranfänger, Schwierigkeiten mit der Programmierung Java Basics - Anfänger-Themen 6
U Compiler-Fehler Programmierung einer Drehkugel Java Basics - Anfänger-Themen 8
L Programmierung mit Hash Java Basics - Anfänger-Themen 3
C Wie habt Ihr angefangen mit der Java Programmierung, ohne Programmiervorkenntnisse Java Basics - Anfänger-Themen 8
J Problem bei der Programmierung eines Tannenbaums Java Basics - Anfänger-Themen 9
S GUI-Programmierung Sudoku-Rätsel lösen Java Basics - Anfänger-Themen 1
B Fibonacci Zahlen dynamische Programmierung Java Basics - Anfänger-Themen 7
S Programmierung simulieren - aber wie?! Java Basics - Anfänger-Themen 3
H Java Programmierung Java Basics - Anfänger-Themen 3
W Problem bei Programmierung von Monte-Carlo-Integration Java Basics - Anfänger-Themen 12
D Guten Tag mache gerade eine Umschulung zum FiSi war leider jetzt 2 Wochen Krank und wir hatten Prozendurale Programmierung. Java Basics - Anfänger-Themen 3
P Rechnen mit Brüchen - objektorientierte Programmierung Java Basics - Anfänger-Themen 18
D Objektorientierte Programmierung Java Basics - Anfänger-Themen 13
F Attribute bei Objektorientierter Programmierung Java Basics - Anfänger-Themen 11
F Ich brauche Hilfe bei Objektorientierter Programmierung... Java Basics - Anfänger-Themen 19
F Problem beim entfernen von mehreren Listenelementen auf einmal (Programmierung des Spiels Arschloch) Java Basics - Anfänger-Themen 1
Q Objektorientierte Programmierung Java Basics - Anfänger-Themen 17
J Texte für Java Programmierung besser verstehen? Java Basics - Anfänger-Themen 2
C GUI Programmierung unter Windows mit Java womit? Java Basics - Anfänger-Themen 11
D Collections Aufgaben Java-Programmierung Überforderung Java Basics - Anfänger-Themen 36
A GUI Programmierung mit Textfield Java Basics - Anfänger-Themen 3
J Programmierung Quiz Spiel Java Basics - Anfänger-Themen 3
J Programmierung Quiz Spiel Java Basics - Anfänger-Themen 2
U Brauche Hilfe bei Programmierung einer Produktdatenbank App Java Basics - Anfänger-Themen 4
L Dynamische Programmierung Java Basics - Anfänger-Themen 0
J Verschieden Fragen über Java Programmierung Java Basics - Anfänger-Themen 3
A Methoden Habe ein Problem bei folgender Programmierung Java Basics - Anfänger-Themen 15
slejden Erste Schritte Frage zur OOP (objektorientierten Programmierung Java Basics - Anfänger-Themen 4
V Threads Nebenläufige Programmierung Java Basics - Anfänger-Themen 6
V Nebenläufige Programmierung Java Basics - Anfänger-Themen 5
Henri Paare Frage über Java Programmierung Java Basics - Anfänger-Themen 10
S Programmierung eines Geldwechselautomaten! Java Basics - Anfänger-Themen 2
R Einige Neulingsfragen (Wrapper, GUI-Programmierung) Java Basics - Anfänger-Themen 4
D JavaBeans und die visuelle Programmierung Java Basics - Anfänger-Themen 2
M Dringend Experten für Scala-Play basierte Programmierung!!!! Java Basics - Anfänger-Themen 0
Z Programmierung eines Stacks Java Basics - Anfänger-Themen 19
A Programmierung herangehensweise Java Basics - Anfänger-Themen 9
T Objektorientierte Programmierung - Kein Plan wieso das nicht funktioniert! Java Basics - Anfänger-Themen 6
G 3D-Spiele-Programmierung Java Basics - Anfänger-Themen 3
I Programmierung-Hausaufgabe: Hilfe benötigt Java Basics - Anfänger-Themen 8
R Kann jemand diese Java Programmierung machen? Versteh ich leider nicht Java Basics - Anfänger-Themen 17
T Nachhilfe JAVA Programmierung Java Basics - Anfänger-Themen 1
R Schaffe es nicht Random-Programmierung zu vollenden. Wo liegt der Fehler in diesem Code? Java Basics - Anfänger-Themen 13
N Socket-Programmierung Java Basics - Anfänger-Themen 4
kaoZ Android Programmierung / Erstellen einer neuen Instanz Java Basics - Anfänger-Themen 2
O OOP Input & Output in der GUI-Programmierung Java Basics - Anfänger-Themen 2
O Java Grafik-Programmierung? Java Basics - Anfänger-Themen 16
F Fehler bei Array und Index Programmierung Java Basics - Anfänger-Themen 18
K Objektorientierten Programmierung Java Basics - Anfänger-Themen 3
R Einstieg in Programmierung Java Basics - Anfänger-Themen 8
W Problem bei MineSweeper Programmierung Java Basics - Anfänger-Themen 10
N Objektorientierte Programmierung: Erben von 2 Klassen - wie ist korrekte Vorgehensweise? Java Basics - Anfänger-Themen 16
D Best Practise für Programmierung Java Basics - Anfänger-Themen 7
D Erste Schritte Einstieg in die Java Spiel Programmierung Java Basics - Anfänger-Themen 7
W objektorientierte Programmierung Java Basics - Anfänger-Themen 25
W objektorientierte Programmierung - String in andere Klasse übergeben Java Basics - Anfänger-Themen 13
E Algorithmen und Programmierung - Datum und Zeit ausgeben? Java Basics - Anfänger-Themen 8
Grejak OOP Einstieg in Objekt-Orientierte-Programmierung Java Basics - Anfänger-Themen 3
D Frage zu Bit Operatoren in der Programmierung Java Basics - Anfänger-Themen 9
U Geräte-Programmierung ? Java Basics - Anfänger-Themen 15
S 2 kurz Fragen zur Möglichkeit der Programmierung Java Basics - Anfänger-Themen 7
T Objektorientierte Programmierung, わからない です Java Basics - Anfänger-Themen 6
J Allgemeine Fragen zur Programmierung Java Basics - Anfänger-Themen 36
N Grafische Programmierung mit jeweils anderen Bildern bei versch. Ergebnissen Java Basics - Anfänger-Themen 9
S Objektorientierte Programmierung Java Basics - Anfänger-Themen 21
M Gui Programmierung Java Basics - Anfänger-Themen 21
J Spielevorschläge für Programmierung Java Basics - Anfänger-Themen 3
O Eisenbahn-Programmierung Java Basics - Anfänger-Themen 8
S Schlechte Programmierung Java Basics - Anfänger-Themen 5
O Probleme bei OO-Programmierung mit Vererbung Java Basics - Anfänger-Themen 18
M Programmierung kürzen??? Java Basics - Anfänger-Themen 5
N Umstieg auf objektorintierte Programmierung Java Basics - Anfänger-Themen 2
N Probleme mit meiner Programmierung Java Basics - Anfänger-Themen 5
M Meine erste Java Programmierung funzt nicht :-( Java Basics - Anfänger-Themen 34
H Programmierung Ampelsteuerung Java Basics - Anfänger-Themen 4
J [Erledigt] Applet Programmierung Java Basics - Anfänger-Themen 4
C Objektorientierte Programmierung Java Basics - Anfänger-Themen 11
T Gui Programmierung lernen Java Basics - Anfänger-Themen 3
E Toolkit (Scanner) Programmierung Java Basics - Anfänger-Themen 5
D Programmierung Profi Java Basics - Anfänger-Themen 18
G Problem bei Programmierung Java Basics - Anfänger-Themen 15
X Objektorientierte Java Programmierung - 3 Fragen zum Code Java Basics - Anfänger-Themen 5
G Problem bei Programmierung Java Basics - Anfänger-Themen 2
G thread programmierung für ANFÄNGER Java Basics - Anfänger-Themen 2
S generic programmierung "ne:w T[X]" Java Basics - Anfänger-Themen 2
A Einstieg in die Programmierung Java Basics - Anfänger-Themen 20
I Frage wegen Wörterbuch Programmierung Java Basics - Anfänger-Themen 13
X Programmierung mit geometrischen Figuren Java Basics - Anfänger-Themen 3
G Opjektorientierte Programmierung (OOP). einfach für euch Java Basics - Anfänger-Themen 4
G Funktions Programmierung Java Basics - Anfänger-Themen 5
W Gui - Grundsätzliche Programmierung Java Basics - Anfänger-Themen 11
G Schnittstellen Programmierung Java Basics - Anfänger-Themen 5

Ähnliche Java Themen

Neue Themen


Oben