Implementierung einer Zusammenstellung (AWT)

Status
Nicht offen für weitere Antworten.

mrbela

Bekanntes Mitglied
Hi Leute!

und zwar sieht meine Vorgabe so aus:

ich habe eine Liste (klasse List) gegeben, in der beliebig viele Fußballvereine aufgelistet sind. Nun soll man durch Anklicken zweier Vereine einen "Spieltag" kreieren, der dann so aussieht:

(viell. TextField, nicht zwingend ->)Mannchaft 1 - Mannschaft 2 [TextField für Tore] : [TextField für Tore] [Checkbox, aktviert, falls das SPiel ausfällt)

Diese Konstellation soll nach dem Button-Klick neben die Liste eingefügt werden!


Wenn nun alle Vereine ausgewählt wurden, gibt es einen Button à la "ganzen Spieltag simulieren". Durch ihn werden dann die Eingaben des Benutzers in die beiden TextField (und optinonal die Checkbox) an eine Funktion ergebnissHinzufuegen(String, String, int, int) gegeben.


Meine Frage ist nun die:

Wie löse ich am Besten das Problem, dass die Liste nach jedem ButtonKlick "aktualisiert" ist, sprich die beiden Mannschaftem, die selektiert wurden, draussen sind UND wie mache ich das (bzw. mit welchem LayoutManager), dass nach jedem Klick, die oben genannte Konstellation (FCB - 1.FCK 3:1) aufgelistet wird ??

ein Lösungsversuch von mir bisher war derjenige:

Code:
addpartie.addActionListener(new ActionListener() {
			public void actionPerformed (ActionEvent e) {
				
				//f.validate();
							
				String[] ausgewaehlt = liste.getSelectedItems();
				Panel bla = new Panel();
				TextField mannschafta = new TextField(ausgewaehlt[0]);
				mannschafta.setEditable(false);
				TextField mannschaftb = new TextField(ausgewaehlt[1]);
				mannschaftb.setEditable(false);
				TextField ergebnis1 = new TextField();
				Label doppelpunkt = new Label("   :");
				TextField ergebnis2 = new TextField();
				Checkbox faelltaus = new Checkbox("Das Spiel fällt aus");
				
				bla.add(mannschafta);
				bla.add(mannschaftb);
				bla.add(ergebnis1);
				bla.add(doppelpunkt);
				bla.add(ergebnis2);
				bla.add(faelltaus);

				String a = ergebnis1.getText();
				
				f.add(bla, BorderLayout.CENTER);
				f.validate();
				f.repaint();
			}
		});


Was hier aber nicht klappt ist, dass beim zweiten Klicken von dem Butten "add Partie" ein neues Panel implementiert wird, dass nicht das erste übrschreibt. Und wie ich (wenn dieses Porb mal gelöst ist) bei mehreren Auflistungen auf die einzelnen Textfelder zugreife (da sie ja immer den gleichen Namen kriegen)....


Ich hoffe, ich konnte mein Problem verständlich rüberbringen!


Ich danke euch schon imn vorraus für eure Hilfe!

Lg[/code]
 
S

SlaterB

Gast
ws verstehst du unter 'überschreiben',
wird nicht eine zweite Menge von Elementen hinzugefügt?
klappt bei mir wunderbar, allerdings in Swing, für AWT antwortet vielleicht wer anders ;)
Code:
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JTextField;

public class TestFrame extends JFrame {

    public TestFrame() {
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        final JPanel p = new JPanel();

        JButton button = new JButton("noch 3 huhu");
        button.addActionListener(new ActionListener() {

            public void actionPerformed(ActionEvent ev) {
                JPanel bla = new JPanel();
                bla.add(new JTextField("huhu"));
                bla.add(new JTextField("huhu"));
                bla.add(new JTextField("huhu"));
                p.add(bla);
                TestFrame.this.validate();
            }
        });

        p.add(button);
        getContentPane().add(p);
        setSize(400, 300);
        setVisible(true);
    }

    public static void main(String[] args) {
        new TestFrame();
    }
}

edit:

liegt wohl an dem add, BorderLayout.Center,

du musst dir natürlich ein Layout aussuchen, bei dem man mehrere Dinge einfügen kann :roll:
 

mrbela

Bekanntes Mitglied
Welches Layout nehme ich denn da am besten?? Was ich bereits versucht habe, was aber nicht ging(wobei ich einen Fehler meinerseits natürlich nicht ausschließe :wink:):

Code:
Panel blub = new Panel();
blub.setLayout(new GridLayout(0,1));

partie.addActionListener(new ActionListener() {
			public void actionPerformed (ActionEvent e) {
				
				//f.validate();
							
				String[] ausgewaehlt = liste.getSelectedItems();
				Panel bla = new Panel();
				TextField mannschafta = new TextField(ausgewaehlt[0]);
				mannschafta.setEditable(false);
				TextField mannschaftb = new TextField(ausgewaehlt[1]);
				mannschaftb.setEditable(false);
				TextField ergebnis1 = new TextField();
				Label doppelpunkt = new Label("   :");
				TextField ergebnis2 = new TextField();
				Checkbox faelltaus = new Checkbox("Das Spiel fällt aus");
				
				bla.add(mannschafta);
				bla.add(mannschaftb);
				bla.add(ergebnis1);
				bla.add(doppelpunkt);
				bla.add(ergebnis2);
				bla.add(faelltaus);

				String a = ergebnis1.getText();
				
				[u]blub.add(bla);[/u]
				f.validate();
				f.repaint();
			}
		});

Ich habe praktisch versucht, ein Panel gefüllt mit den TextFields etc. in ein weiteres Panel, das dann mit GridLayout definiert ist, einzufügen...

Panel in Panel habe ich deshalb getan, da wenn ich die 5 Felder (mannschaft1, mannschaft2, tore,rote,faelltaus) direkt in ein Panel der art

Code:
Panel test_panel = new Panel(new GridLayout(0,5));

getan habe, dann haben diese 5 Elemente bei

Code:
frame.add(test_panel, BorderLayout.CENTER));

den ganzen Platz von Center ausgefüllt. sprich ich hatte Textfelder und buttons, die dann mal 200x50 Pixel ausmachten ;) das woltle ich mit Hilfe der (panel <-> panel) verschachtelung umgehen.



Eine weitere Frage war noch die (aus meinem ersten Post), wie ich diese ganzen Panels, die ich durch

Code:
button.addActionListener(new ActionListener() { 

            public void actionPerformed(ActionEvent ev) { 
                JPanel bla = new JPanel(); 
                bla.add(new JTextField("huhu")); 
                bla.add(new JTextField("huhu")); 
                bla.add(new JTextField("huhu")); 
                p.add(bla); 
                TestFrame.this.validate(); 
            } 
        });

erzeuge, auslesen kann.... denn die Textfelder haben a) keinen Namen oder bei z.B.

Code:
button.addActionListener(new ActionListener() { 

            public void actionPerformed(ActionEvent ev) { 
                JPanel bla = new JPanel(); 
                JTextField test_feld = new JTextField("huhu");
                bla.add(test_feld);
                p.add(bla); 
                TestFrame.this.validate(); 
            } 
        });

alle den gleichen Namen ?!?



WICHIG IST, DASS ICH DAS GANZE MIT HILFE VON AWT IMPLEMENTIEREN MUSS...



Ich danke für eure Hilfe!


LG
 
S

SlaterB

Gast
versuche doch erstmal ein Layout zu erstellen, in dem alle deine maximalen Felder zu sehen sind,
solange das nicht klappt (was gerne eine Frage an die AWT-Layouter sein kann),
musst du dich mit dem dynamischen Einfügen noch nicht beschäftigen,

-------

die Objekte über ihren Namen anzusprechen ist eh eine nicht besonders tolle Sache,
besser sind da Array für jeden Typ oder noch besser Objektorientierung:
mach für die Zeile eine eigene Klasse MyBegegnungPanel, mit getter für die einzelnen Felder,
dann brauchst du nur noch ein MyBegegnungPanel[9] oder so,
darin sind sie zum Zugriff gespeichert, unabhängig vom Layout der GUI
 

mrbela

Bekanntes Mitglied
okay, ich bin soweit fertig damit!

hätt enur noch eine kleine Frage....

wie kann ich den die Textrfelder auslesen ??? da komm ich net drauf :(

ich stell mal den Code rein:

Code:
final Panel mega_panel = new Panel();
		mega_panel.setLayout(new GridLayout(0,1));
		f.add(mega_panel, BorderLayout.CENTER);

partie.addActionListener(new ActionListener() {
			public void actionPerformed (ActionEvent e) {
					
				String[] ausgewaehlt = liste.getSelectedItems();
				
				Panel partie_pannel = new Panel();
				TextField mannschaft1 = new TextField(ausgewaehlt[0]);
				mannschaft1.setEditable(false);
				TextField mannschaft2 = new TextField(ausgewaehlt[1]);
				mannschaft2.setEditable(false);
				TextField ergebnis1 = new TextField();
				Label doppelpunkt = new Label("   :");
				TextField ergebnis2 = new TextField();
				Checkbox faelltaus = new Checkbox("Das Spiel fällt aus");
				partie_pannel.add(mannschaft1);
				partie_pannel.add(mannschaft2);
				partie_pannel.add(ergebnis1);
				partie_pannel.add(doppelpunkt);
				partie_pannel.add(ergebnis2);
				partie_pannel.add(faelltaus);
	                                                f.validate();
				f.repaint();
			}
		});
	}


DANKE für die Hilfe!

Lg
 

mrbela

Bekanntes Mitglied
in Zeile 25 kommt noch:

Code:
mega_panel.add(partie_pannel);

ausserdem hab ich rgad gemerkt, dass ich Panel falsch geschrieben habe :D

aber darum gehts jetzt auch nicht ;)

danke

lg
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
E AWT Implementierung einer Anweisung in Methode ActionPerformed AWT, Swing, JavaFX & SWT 2
R JTable: Implementierung einer JTable in einer JScrollPane AWT, Swing, JavaFX & SWT 2
B JavaFX Verständnisfrage EventHandler<ActionEvent> Implementierung in meiner Klasse AWT, Swing, JavaFX & SWT 2
B Java FX In control.TreeCell-Implementierung Binding erzeugen AWT, Swing, JavaFX & SWT 0
H JTextArea - farbige Zeilen .. bitte um Vorschläge zur Implementierung AWT, Swing, JavaFX & SWT 1
S Swing SwingWorker - richtige Implementierung doInBackground() AWT, Swing, JavaFX & SWT 5
F Problem mit Implementierung von Kollisionsabfrage AWT, Swing, JavaFX & SWT 5
W Java AWT/GUI Implementierung gesucht AWT, Swing, JavaFX & SWT 3
M Implementierung der generalisierten Houghtranformation AWT, Swing, JavaFX & SWT 4
E Implementierung des Windows Rechners? AWT, Swing, JavaFX & SWT 7
N AWT seperate ActionHandler Implementierung AWT, Swing, JavaFX & SWT 2
Dit_ Swing MutableComboBoxModel | Implementierung AWT, Swing, JavaFX & SWT 10
hdi Swing Gemeinsame JTable-Implementierung AWT, Swing, JavaFX & SWT 23
cowabunga1984 Implementierung von Graphics2D AWT, Swing, JavaFX & SWT 2
S Implementierung Java Swing HelloWorld - verständnisproblem AWT, Swing, JavaFX & SWT 3
MiMa Optimieren einer Methode zum Zentrieren von Fenstern AWT, Swing, JavaFX & SWT 0
T VerifyListener - Ersetzen einer 0 AWT, Swing, JavaFX & SWT 5
I JavaFX JavaFx-Anwendung für die Erstellung einer Windows-Anwendung? AWT, Swing, JavaFX & SWT 6
J Drag und drop aus einer JTable - bitte um Unterstützung AWT, Swing, JavaFX & SWT 2
N Dropshadow setzen bei einer Gruppe von Tiles, die sich jeweils in einer Stackpane befinden, welche in einer Gridpane angeordnet sind. AWT, Swing, JavaFX & SWT 0
M Daten zufällig Einlesen aus einer Datei (binäres Format) AWT, Swing, JavaFX & SWT 7
ExceptionOfExpectation Mit einer laufenden GUI Applikation eine Datei in dem Rechner löschen AWT, Swing, JavaFX & SWT 2
Jose05 Aus einer normalen Java Klasse eine FXML-Klasse laden AWT, Swing, JavaFX & SWT 12
Linjutsu Den Inhalten aus einer ArrayList Bilder zuweisen (Kartenspiel) AWT, Swing, JavaFX & SWT 8
H JavaFX Timeline II: Verschieben einer ImageView AWT, Swing, JavaFX & SWT 16
I Hilfe bei dem Erstellen einer SQL Abfrage aus gewählten JComboBoxen AWT, Swing, JavaFX & SWT 5
L Swing TextPanel Schrift untereinander und auf einer Höhe AWT, Swing, JavaFX & SWT 3
mananana Mögliche probleme die in einer GUI passieren Können AWT, Swing, JavaFX & SWT 6
I JTable mit einem Button zu einer Detail Seite springen AWT, Swing, JavaFX & SWT 4
Ernesto95 JavaFX Return Value nach Beendigung einer Animation AWT, Swing, JavaFX & SWT 15
melaniemueller Wortliste in einer Datei ablegen AWT, Swing, JavaFX & SWT 12
D Layout einer scene mit ListView Elementen und Zwei Textfeldern AWT, Swing, JavaFX & SWT 1
Jose05 JavaFx Fxml: GUI aus einer anderen Klasse starten AWT, Swing, JavaFX & SWT 1
U Was genau ist das Objekt einer affinentransformation? AWT, Swing, JavaFX & SWT 1
B JavaFX Prüfen ob ein Objekt sich mehrmals in einer Liste befindet AWT, Swing, JavaFX & SWT 5
mac2010 JavaFX Einbindung einer Karte AWT, Swing, JavaFX & SWT 1
donnico2 Objekte in der GUI ausgeben mit Hilfe einer DAO AWT, Swing, JavaFX & SWT 1
Kohl Jedes Objekt einer JTable um ein Zeichen verkürzen AWT, Swing, JavaFX & SWT 7
W Aufrufen einer bestimmten Scene mit if-Bedingung AWT, Swing, JavaFX & SWT 4
J Ablaufsteuerung/Anleitung machen mit JDialog und einer Zustandsmaschine AWT, Swing, JavaFX & SWT 1
missy72 JavaFX Wiederholen einer IF-Abfrage beim erneuten Öffnen einer Stage AWT, Swing, JavaFX & SWT 11
missy72 JavaFX TableView / TableColumn / ObservableList / zwei Werte in einer Zelle AWT, Swing, JavaFX & SWT 2
S JavaFX - mit Listener Veränderungen in einer TableView abhören AWT, Swing, JavaFX & SWT 3
missy72 JavaFX ObservableList in einer ArrayList speichern. AWT, Swing, JavaFX & SWT 7
HoT Sortieren von ein paar Zeilen in einer Tabelle, aber nicht die ganze Tabelle AWT, Swing, JavaFX & SWT 3
kodela Swing Element einer JComboBox ausgrauen AWT, Swing, JavaFX & SWT 3
B JavaFX Farbe eines Quadrates in einer separaten Klasse ändern AWT, Swing, JavaFX & SWT 4
H Daten aus einer XML(x83-Datei) in einem JFrame anzeigen lassen AWT, Swing, JavaFX & SWT 9
N Aufruf einer anderen Klasse durch Button ActionListener AWT, Swing, JavaFX & SWT 2
N Einer TextArea ein ScrollPane hinzufügen AWT, Swing, JavaFX & SWT 8
L JavaFX Exception nach includieren einer fxml // nested controller AWT, Swing, JavaFX & SWT 1
K Probleme bei der Erstellung und Ausführung einer Jar Datei AWT, Swing, JavaFX & SWT 2
A checkbox in einer TableView abhängig von einem anderen Celleninhalt disablen AWT, Swing, JavaFX & SWT 1
G Verknüpfung einer pdf Datei AWT, Swing, JavaFX & SWT 2
B Ausgaben einer Umrechnung vom Textfeld in ein Label AWT, Swing, JavaFX & SWT 2
F jTree und das Model aus einer eigenen Klasse AWT, Swing, JavaFX & SWT 1
D Zeilenumbruch in einer JTable AWT, Swing, JavaFX & SWT 9
N Wie kann ich zwei Grafiken in einer Oberfläche anzeigen lassen? AWT, Swing, JavaFX & SWT 8
@SupressWarnings() JavaFX Auf den Controller einer ListCell zugreifen AWT, Swing, JavaFX & SWT 4
Drachenbauer Swing Wie ändere ich den Hintergrund vom Anzeigefeld einer JComboBox, die nicht zum Hineinschreiben offen steht? AWT, Swing, JavaFX & SWT 32
H 3 verschiedene Nachrichten in einer FXML View die Infos kommen aus DB AWT, Swing, JavaFX & SWT 4
karlmasutra JavaFX Zugriff auf eine erzeugte Scene aus einer anderen Klasse AWT, Swing, JavaFX & SWT 1
S Java GUI durch variable Größe einer Map anpassen AWT, Swing, JavaFX & SWT 3
B Textfelder in einer ListView ausgeben AWT, Swing, JavaFX & SWT 13
J Searchfunktion auf einer MS Access Datenbank AWT, Swing, JavaFX & SWT 7
B Text im Tetfeld in einer TableView darstellen AWT, Swing, JavaFX & SWT 20
M Inhalte einer FlowPane AWT, Swing, JavaFX & SWT 4
W Swing JTable Zeilenumbruch innerhalb einer Zelle AWT, Swing, JavaFX & SWT 3
E Prinzip: wie man Ereignisse in einer GUI verarbeit. Frage zum Design? AWT, Swing, JavaFX & SWT 10
FRI3ND JavaFX: Wie kann ich einer Scene Argumente übergeben? AWT, Swing, JavaFX & SWT 14
K Swing Text eines Lables in einer Methode ändern AWT, Swing, JavaFX & SWT 13
G JavaFX JavaFX-Dialog aus einer Nicht-JavaFX-Anwendung heraus AWT, Swing, JavaFX & SWT 1
1 Swing Progressbar benutzen um Fortschritt einer Methode anzuzeigen AWT, Swing, JavaFX & SWT 4
K JavaFX ViewTable mit einer LinkedList befüllen AWT, Swing, JavaFX & SWT 3
L CardLayout in einer Klasse? AWT, Swing, JavaFX & SWT 2
J Compiler in der JavaFX stop() Methode warten lassen bist eine Aktion in einer anderen Scene gemacht AWT, Swing, JavaFX & SWT 5
D Java FX Image in einer Webanwendung annotieren und den Bereich ausschneiden AWT, Swing, JavaFX & SWT 0
L Java- UI zweites Fenster aus einer anderen Klasse öffnen durch ButtonClick AWT, Swing, JavaFX & SWT 4
L JavaFX Problem beim Aufrufen einer Methode AWT, Swing, JavaFX & SWT 5
ralfb1105 Swing Ausführung einer SwingWorker Klasse stoppen AWT, Swing, JavaFX & SWT 4
xYurisha JLabel Text einer geöffneten Gui über eine andere Klasse ändern! AWT, Swing, JavaFX & SWT 3
xYurisha Aus einer Gui Buttons, Label und ProgessBars entfernen AWT, Swing, JavaFX & SWT 4
MiMa Selektion aus einer ListView AWT, Swing, JavaFX & SWT 5
J 2D-Grafik Background einer Jpanel Klasse ändern AWT, Swing, JavaFX & SWT 1
J JFram Location aus Konstruktor einer anderen Klasse auslesen AWT, Swing, JavaFX & SWT 10
L Methode zum Füllen einer ComboBox AWT, Swing, JavaFX & SWT 4
J Suche nach einer horizontal aufklappbaren Toolbar AWT, Swing, JavaFX & SWT 1
P Variable einer Eingabe in anderes Textfeld schreiben AWT, Swing, JavaFX & SWT 7
D JavaFX Einbinden einer .fxml AWT, Swing, JavaFX & SWT 1
B Zeile einer Tabelle selektieren AWT, Swing, JavaFX & SWT 1
A Prüfung einer Eingabe auf Gleitkommazahl AWT, Swing, JavaFX & SWT 5
J Suchmaschine einer Datenbank AWT, Swing, JavaFX & SWT 5
Kanda Sorata Inhalt einer .txt Datei einlesen und in ein Label einfügen (JavaFX) AWT, Swing, JavaFX & SWT 2
A Swing JLabels in einer ForEach Schleife an den JPanel anheften (UNO Netzwerkspiel) AWT, Swing, JavaFX & SWT 1
R Update eines Labels bei Methodenaufruf einer anderen Klasse AWT, Swing, JavaFX & SWT 9
M Auswahl aus einer ListView AWT, Swing, JavaFX & SWT 3
J JavaFX - Felder (Label) in einer ForSchleife bearbeiten AWT, Swing, JavaFX & SWT 4
F Swing Spaltenbreite einer Column eines JTable auslesen AWT, Swing, JavaFX & SWT 5
L Dynamischer Aufbau einer Tabelle über Objekte AWT, Swing, JavaFX & SWT 2
C JavaFX Tief setzen in der Überschrift einer Tabellenspalte AWT, Swing, JavaFX & SWT 3

Ähnliche Java Themen


Oben