![]() |
|
|||||||
| AWT, Swing, JavaFX & SWT Themen zur Programmierung von Benutzer-Oberflächen (GUI, Applet) sowie zur Grafikprogrammierung (2D / 3D) |
|
|
|
Themen-Optionen | Thema durchsuchen | Ansicht |
| #1 (permalink) | |||||
|
Stammbenutzer
Kilobyte
Registriert seit: 22.05.2012
Fachbeiträge: 110
Abgegebene Danke: 30
Erhielt 0 Danke für 0 Beiträge
|
Hallo,
ich habe ein Vokabellernprogramm geschrieben, bei dem man seine Vokabeln selber erstellen muss. Am Anfang öffnet sich ein Fenster, wo man die Vokabeln abfragen lassen kann, doch man muss erst Vokabeln laden, die man erstellt hat. Um diese zu erstellen klickt man in der Menüleiste auf "Kartensatz erstellen". Wenn ich auf Kartensatz erstellen klicke wird die Methode guiÄndern() aufgerufen. Dort wird mit removeAll() jedes Komponent vond dem JPanel entfernt, und es werden neue JTextFields usw. erstellt. Die Gui sieht dann genau gleich aus, aber ich muss es so machen, da ich ja neue Listener brauche(oder?). Das Problem ist nur, dass wenn ich auf Kartensatz erstellen klicke, dass dann das JFrame ohne JPanel erscheint! Doch wenn ich mit der Maus über das Frame rüberfahre erscheint plötzlich der JButton! Genauso, wenn ich mit der maus auf die Stelle klicke, wo die JTextFields sind! Das ist schon alles sehr komisch... Ich poste mal den Code von den beiden guiErstellen Methoden:
Hier die andere Methode:
Wenn ihr wollt, poste ich noch den restlichen Code... LG, mathaisj |
||||
|
|
|
| #2 (permalink) | |||||||||||||||||||
|
Stammbenutzer
CD-R 80
Registriert seit: 17.02.2009
Fachbeiträge: 7.116
Abgegebene Danke: 7
Erhielt 1.105 Danke für 1.103 Beiträge
|
Blos weil Du beim Fernsehen auf ein anderes Programm wechselt, kaufst Du Dir ja auch nicht einen neuen Fernseher. |
||||||||||||||||||
|
|
|
||||||||||||||||||
| #3 (permalink) | |
|
Stammbenutzer
Kilobyte
Themenstarter
Registriert seit: 22.05.2012
Fachbeiträge: 110
Abgegebene Danke: 30
Erhielt 0 Danke für 0 Beiträge
|
Ich bin ziemlich neu in Java und weiß nicht was Pattern ist...
Also ich dachte mir halt ich brauche dasselbe Aussehen, aber ich brauche andere Listener... Deswegen muss ich eine neue JTextArea usw. erstellen, da eine einzige doch keine zwei Listener haben kann... Wie gesagt ich bin noch ziemlich neu in Java... Wie würde das MVC Pattern denn in Code aussehen? LG, mathiasj |
|
|
|
| #4 (permalink) | |
|
Java-Forum Team
Site Operator
Registriert seit: 24.04.2004
Fachbeiträge: 11.995
Abgegebene Danke: 48
Erhielt 576 Danke für 535 Beiträge
|
Schau mal in die FAQ, da findest du ausreichend Beispiele.
__________________
Schöne Grüße, L-ectron-X Programmieren lernt man nur durch programmieren. www.java-forum.org - Java programmieren aus Leidenschaft www.byte-welt.de - Die Welt des Programmierens "Wenn man die Buchstaben von Bundeskanzlerin umstellt, kommt Bankzinsenluder raus..." |
|
|
|
| #5 (permalink) | |
|
Stammbenutzer
CD-R 80
Registriert seit: 17.02.2009
Fachbeiträge: 7.116
Abgegebene Danke: 7
Erhielt 1.105 Danke für 1.103 Beiträge
|
Ist vielleicht nicht unbedingt Anfängergeeignet, aber zur Info:
Model View Controller ? Wikipedia Code Demo's gibt es hier, wenn nicht in den FAQs/Tutorials, einige in diversen Threads. Grundsätzlich empfiehlt es sich auch, erst einmal klein anzufangen und Applikation Stück für Stück auf zubauen. Vom Einfachen zum Komplexen. Warum muss sich denn das Menü ändern? Könnte man für den Anfang nicht einfach ein Menü anbieten, das alle Funktionen enthält? Ansonsten Arrays, Listen usw. sind ein Begriff? Meiner Meinung ist es wichtig, dass man zunächst die grundlegenden Vorgehensweisen und Objekte kennt, bevor man sich mit einer GUI beschäftigt. |
|
|
|
| #6 (permalink) | |
|
Stammbenutzer
Kilobyte
Themenstarter
Registriert seit: 22.05.2012
Fachbeiträge: 110
Abgegebene Danke: 30
Erhielt 0 Danke für 0 Beiträge
|
Also MVC verstehe ich nicht so wirklich...
@Michael... Das Menü muss sich ändern, da ich einmal Code habe um die Vokabeln zu schreiben (mit entsprechenden Menüleisten wie speichern) und zum anderen Code habe um sie zu laden... Und ja, ich kenne Arrays und Listen usw., aber ich weiß nciht wie mir das hier helffen soll? Und weiß jemand von euch woran mein Problem überhaupt liegt? Ich verstehe das der Ansatz falsch ist, aber es interessiert mich einfach, warum der Code nicht funktioniert... LG, mathiasj |
|
|
|
| #7 (permalink) | |
|
Stammbenutzer
Megabyte
Registriert seit: 04.12.2007
Fachbeiträge: 1.538
Abgegebene Danke: 10
Erhielt 214 Danke für 214 Beiträge
|
MVC heisst vereinfacht, dass du M wie Model (Daten), V wie View (GUI) und C wie Controller trennst, und wie diese dann miteinander kommunizieren bzw. agieren. Das bedeutet, in deiner View hast du nur die sichtbaren Komponenten und zeigst etwas an. Das Model enthält nur die Daten. Und der Controller steuert das Ganze. Dadurch wird alles übersichtlicher und beim Ändern oder Austauschen besser wartbar und weniger fehleranfällig. Das ist aber erst mal nur eine grobe Beschreibung. Wie das dann letztlich in der Realität umgesetzt wird, ist teilweise unterschiedlich.
Bei deinem Code ist es wahrscheinlich problematisch, dass du während der Laufzeit Komponenten von deiner GUI entfernst und wieder neu hinzufügst. Dabei kann es oft Fehler geben. Besser wäre, wenn du nur einmal eine GUI (z.B. Panel mit Formulakomponenten) erstellst und dann nur die Daten (aus dem Model) austauschst. Vor allem, wenn die GUI später genauso wieder aufgebaut werden soll, wie zuvor, sich also daran nichts ändert.
__________________
"Das Internet... Gibt's den Blödsinn immer noch?" (Homer Simpson) |
|
|
|
|
| Themen-Optionen | Thema durchsuchen |
| Ansicht | |
Ähnliche Themen
|
||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| (Swing) Komponenten bleiben bei Animation unsichtbar | renwal | AWT, Swing, JavaFX & SWT | 7 | 08.06.2012 15:25 |
| (LayoutManager) GridBagLayout Komponenten austauschen | Camino | AWT, Swing, JavaFX & SWT | 5 | 02.03.2010 15:58 |
| Eigene Komponenten | Seli | AWT, Swing, JavaFX & SWT | 2 | 21.02.2008 21:17 |
| Laden und Speichern von Objekten (Autos / Filialen) | forsakencries | Java Basics - Anfänger-Themen | 4 | 13.01.2008 16:23 |
| Lesezeichen |
|
|