CheckBox aus anderer Klasse

Status
Nicht offen für weitere Antworten.
K

Krider/Florian

Gast
Hallo,
ich hab ein Problem, ich bin zur Zeit dabei ein kleines Spiel zu programmieren.
Um das ganze etwas übersichtlicher zu gestalten wollte ich das Spiel in mehrere Klassen zerlegen.

Nun zum Problem:

Der Spieler soll zwischen zwei Spieler arten wählen können per CheckBox. Ist es möglich auch die CheckBox in eine Nebenklasse zu schreiben und sie dann im Hauptprogramm darzustellen sprich:

Code:
public class Client extends JPanel
{
 // Inhalt wäre ja denke ich überflüssig.
}
ist mein "Hauptprogramm"

Code:
public class Spielerwahl extends JPanel
{
	JCheckBox cb2, cb3;
	boolean Spieler1,Spieler2;
	
	
	public void chose()
	{
	
	cb2 = new JCheckBox( "", false );
    add(cb2);
	cb2.setBounds(10,200,100,20);
	
		
	
	ItemListener cb2listener = new ItemListener() {
		public void itemStateChanged( ItemEvent e )
		{
			Spieler1 =! Spieler1;
		}
	};
	
	
	cb2.addItemListener( cb3listener );
    }
}
Dies ist meine Nebenklasse.
Ist es nun möglich diese Checkboxen im Hauptprogramm darzustellen?
Ich hab es schon mit

Spielerwahl Spieler = new Spielerwahl

Spieler.chose();
oder
Spieler.add(cb2); & Spieler.cb2.setBounds(); probiert aber nichts hat geklappt .

Bitte um Hilfe![/code]
 

mf4nky

Mitglied
Hey Krider/Florian

Ohne jetzt gross auf die korrekte Code-Struktur einzugehen:

Du fügst dem JPanel "Spielerwahl" die JComboBox hinzu. Soweit so gut.
Aber meiner Meinung nach, müsstest du jetzt den kompletten JPanel "Spielerwahl" dem "übergeordneten" JPanel "Client" hinzufügen.

Code:
public class Client extends JPanel
{
// ...

Spielerwahl wahl = new Spielerwahl();
add(wahl);

// ...
}

Die Struktur sieht dann so aus:
Code:
_ JPanel Client
   |_ JPanel Spielerwahl
       |_ JComboBox

Das war jetzt einfach mal nen "Schuss ins Blaue". Post doch sonst mal deinen kompletten Code, dann kann man sehen, wie und wieso du die Aufteilung machen möchtest...
 
F

Florian/Krider

Gast
Also, durch den Befehl
add(wahl);
werden die Checkboxen leider immer noch nicht dargestellt.
Wenn ich dann in meinem Hauptprogramm eingebe,

Code:
public class Client extends JPanel
{
final Spielerwahl Spieler = new Spielerwahl();

Spieler.cb2 = new JCheckBox( "", false );
add(Spieler.cb2);
Spieler.cb2.setBounds(10,200,100,20);

}

werden die Checkboxen natürlich dargestellt, aber so verkürzt sich ja nichts und ich mein Hauptprogramm wird wieder ähnlich voll.
Meine Vorstellung war einfach, dass ich einfach in mein Hauptprogramm später schreibe: "Spieler.chose();"
damit alles im Hauptprogramm gemacht wird, was in der Methode chose() steht.

Code:
//---- Nebenklasse
public class Spielerwahl extends JPanel
{
   JCheckBox cb2, cb3;
   boolean Spieler1,Spieler2;
   
   
   public void chose()
   {
   
   cb2 = new JCheckBox( "", false );
    add(cb2);
   cb2.setBounds(10,200,100,20);
   
      
   
   ItemListener cb2listener = new ItemListener() {
      public void itemStateChanged( ItemEvent e )
      {
         Spieler1 =! Spieler1;
      }
   };
   
   
   cb2.addItemListener( cb3listener );
    }
}

Spieler.chose();
damit alles im Hauptprogramm gemacht wird, was in der Methode chose() steht.
 

mf4nky

Mitglied
Hey Florian/Krider

Habe das Beispiel jetzt mal nachgebaut und daraus eine ausführbare Version gemacht.

Bei mir ist jetzt halt der Client als "JFrame" definiert, damit ich ein Fenster angezeigt krieg.

Code:
public class Client extends JFrame {

    // hier würde man besser mit einem "Getter" arbeiten
    // der Einfachheit halber habe ich darauf verzichtet
    final Spielerwahl spieler = new Spielerwahl();

    Client() {
        setSize(200, 200);

        initClient();
    }

    public void initClient() {
        // Fügt den JPanel "spieler" dem Fenster (Client) hinzu
        add(spieler);
        // führt die Methode "choose" des JPanels "spieler" aus
        spieler.choose();
    }

    public static void main(String[] args) {
        Client c = new Client();
        c.setVisible(true);
    }
}

Die Klasse "Spielerwahl" kannst du mit einer Ausnahme so belassen.
Bei mir ist die Methode "choose" mit 2 "o" geschrieben :)

Hoffe, mein Code hilft dir weiter.

/edit: es spielt übrigens keine Rolle, ob du zuerst den JPanel "spieler" addest oder zuerst die Methode "choose" ausführst...
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
M Checkbox abfragen und Radiobutton Group zurücksetzen Java Basics - Anfänger-Themen 1
O checkbox Java Basics - Anfänger-Themen 5
W Befüllung einer Tabelle mit Checkbox, Trennung GUI und Model Java Basics - Anfänger-Themen 5
J ItemStateChanged() bei einer Checkbox Java Basics - Anfänger-Themen 2
H Text durch Checkbox erscheinen lassen Java Basics - Anfänger-Themen 2
P Probleme mit checkBox.isSelected Java Basics - Anfänger-Themen 4
R Speichern von Checkbox einträgen Java Basics - Anfänger-Themen 12
C ActionEvent mit CheckBox (true und false) Java Basics - Anfänger-Themen 6
M Checkbox Java Basics - Anfänger-Themen 11
D Erste Schritte JList + Checkbox Java Basics - Anfänger-Themen 5
D Variablen Checkbox Änderung in 2. Klasse aktuallisieren Java Basics - Anfänger-Themen 3
J checkbox status abfragen und drucken Java Basics - Anfänger-Themen 13
R JTabel + HashMap + Checkbox Java Basics - Anfänger-Themen 4
Os-Programming Checkbox immer wieder überprüfen Java Basics - Anfänger-Themen 13
S NullPointerException beim Checkbox-Label-Array mit nextLine() Java Basics - Anfänger-Themen 6
J Checkbox oder RadioButtons Java Basics - Anfänger-Themen 11
H Checkbox mit Werten hinterlegen Java Basics - Anfänger-Themen 4
H JRadioButton steuert Checkbox Java Basics - Anfänger-Themen 5
0 TicTacToe, Problem mit den Checkbox-Aktionen Java Basics - Anfänger-Themen 6
jnoob Checkbox in Dialog Dynamisch erstellen Java Basics - Anfänger-Themen 2
D jeditorpane checkbox abfragen? Java Basics - Anfänger-Themen 7
C Checkbox will nicht? Java Basics - Anfänger-Themen 7
T JTable mit Checkbox Java Basics - Anfänger-Themen 9
K Wieso schaltet meine CheckBox von selbst um ? Java Basics - Anfänger-Themen 31
T Checkbox in jtable: boolean wert direkt setzen - wie? Java Basics - Anfänger-Themen 1
1 Checkbox nach klick ausblenden Java Basics - Anfänger-Themen 4
G Checkbox Java Basics - Anfänger-Themen 11
F Muss ich TableCellEditor implementieren für checkbox abfrage Java Basics - Anfänger-Themen 3
G Checkbox Status Bit in einem Byte sichern Java Basics - Anfänger-Themen 5
B checkbox . ausgewählt? Java Basics - Anfänger-Themen 5
J Kleines Problem mit Checkbox Java Basics - Anfänger-Themen 5
B Checkbox abfragen Java Basics - Anfänger-Themen 6
D Checkbox in JTable(Spalte) einfügen. Java Basics - Anfänger-Themen 2
C JTable - Checkbox, Icon, was auch immer. Java Basics - Anfänger-Themen 8
C JTable: Farbe und Checkbox Java Basics - Anfänger-Themen 3
M Checkbox Array Java Basics - Anfänger-Themen 11
J Wie ordne ich Swing-Elementen (checkbox, button, etc.)? Java Basics - Anfänger-Themen 2
M Checkbox in 2 Columns Java Basics - Anfänger-Themen 8
G Problem mit Checkbox Java Basics - Anfänger-Themen 2
G Frage zur Checkbox Java Basics - Anfänger-Themen 8
C JSP, HTML checkbox in Java Abfrage Java Basics - Anfänger-Themen 3
MoxMorris Wie macht man String[] = String[] aus einer anderer Methode? Java Basics - Anfänger-Themen 18
N Klassen Methoden anderer Klassen aufrufen Java Basics - Anfänger-Themen 4
M variable in anderer funktion aufrufen Java Basics - Anfänger-Themen 10
julian0507 Array aus Methode in anderer Methode sichtbar machen Java Basics - Anfänger-Themen 10
Encera Auf Objekte aus anderer Klassen zugreifen Java Basics - Anfänger-Themen 20
T Zugriff auf Control anderer Klasse Java Basics - Anfänger-Themen 5
D Array in Main Methode aus anderer Klasse aufrufen Java Basics - Anfänger-Themen 3
J Fehler bei array aus anderer Klasse Java Basics - Anfänger-Themen 3
R TreeSet Zugriff aus anderer Klasse Java Basics - Anfänger-Themen 8
M Von einem Menü Methode aus anderer Klasse ausführen, die errechnete Werte in Datei schreibt. Java Basics - Anfänger-Themen 8
KogoroMori21 Objektvariable anderer Klasse übernehmen, Getter/Setter Java Basics - Anfänger-Themen 11
J In main() Datei geöffnet, von anderer Funktion beschreiben Java Basics - Anfänger-Themen 3
Q Besitzen zwei Strings identische Buchstaben, nur in anderer Reihenfolge? Java Basics - Anfänger-Themen 10
J Methoden Frage: Array-Werte in anderer Methode ändern Java Basics - Anfänger-Themen 4
yoskaem Text Color durch Klicken eines Buttons in anderer Activity ändern Java Basics - Anfänger-Themen 2
pkm Eclipse wie mit anderer JAVA-Version starten? Java Basics - Anfänger-Themen 1
A Auf Eigenschaften von Objekten anderer Klassen zugreifen Java Basics - Anfänger-Themen 5
M Klassen Methode in anderer Klasse aufrufen? Java Basics - Anfänger-Themen 3
M Methode in anderer Klasse aufrufen Java Basics - Anfänger-Themen 5
B Mit methode Objekt aus anderer Klasse erstellen Java Basics - Anfänger-Themen 6
P Zugriff auf Variablen anderer Klassen in Greenfoot Java Basics - Anfänger-Themen 1
M Klassen Klasse aus anderer Klasse "aufrufen" Java Basics - Anfänger-Themen 2
S Java Array Länge aus anderer Klasse lesen Java Basics - Anfänger-Themen 1
B Schleife von anderer Methode stoppen? (Start continue) Java Basics - Anfänger-Themen 18
I Eigenschaften von Position aus anderer Klasse übernehmen Java Basics - Anfänger-Themen 17
A OOP Variable in anderer Klasse durch Methode aufrufen und einer anderen Variable gleichsetzen Java Basics - Anfänger-Themen 2
CptK Interface Klasse Frame (extends JFrame) aus anderer Klasse schließen Java Basics - Anfänger-Themen 7
PaperHat Methoden als Parameter anderer Methode verwenden Java Basics - Anfänger-Themen 11
T OOP GUI aus anderer Klasse updaten Java Basics - Anfänger-Themen 6
CptK Auf ActionListener von anderer Klass aus zugreifen Java Basics - Anfänger-Themen 5
A JButton in anderer Klasse bearbeiten. Java Basics - Anfänger-Themen 2
M String zerlegen anhand anderer String Java Basics - Anfänger-Themen 6
deatzi Wert aus anderer Klasse lesen Java Basics - Anfänger-Themen 7
J Methoden Methode aus anderer Klasse aufrufen Java Basics - Anfänger-Themen 12
C Methoden Auf Methoden anderer Klassen zugreifen Java Basics - Anfänger-Themen 10
S Eingabe in anderer Klasse verwenden Java Basics - Anfänger-Themen 3
T Methoden Auf Variabler aus anderer Methode zugreifen Java Basics - Anfänger-Themen 5
F Interface JButton von anderer Klasse hinzufügen Java Basics - Anfänger-Themen 2
L Klassen Methode aus anderer Klasse Java Basics - Anfänger-Themen 13
S setText aus anderer class heraus Java Basics - Anfänger-Themen 6
M Klassen Methode aus anderer Klasse nicht aufrufbar Java Basics - Anfänger-Themen 11
arjoopy Methoden Methoden anderer Klassen Java Basics - Anfänger-Themen 6
J Button in anderer Klasse ändern Java Basics - Anfänger-Themen 3
E Referenzvariable in anderer Klasse aufrufen Java Basics - Anfänger-Themen 3
E Klassen Referenzvariable in anderer Klasse aufrufen. Java Basics - Anfänger-Themen 1
M Neu instanzierte Klasse übernimmt Werte von anderer Instanz Java Basics - Anfänger-Themen 4
A Variablen In anderer Klasse auf Objekte von JFrame zugreifen Java Basics - Anfänger-Themen 1
magdaStone Logikproblem Umschalten von booleans in anderer Klasse Java Basics - Anfänger-Themen 0
F Methode anderer Klasse aufrufen Java Basics - Anfänger-Themen 1
K OOP Mit anderer Klasse auf JTextField zugreifen Java Basics - Anfänger-Themen 5
N Auf TextFeld aus anderer Klasse zugreifen ohne es zu übergeben Java Basics - Anfänger-Themen 3
P Aufruf Methode anderer Klasse Java Basics - Anfänger-Themen 5
G Variablen Verwendung von Variablen in anderer Klasse Java Basics - Anfänger-Themen 6
1 Arraylist in anderer Klasse aufrufen Java Basics - Anfänger-Themen 11
S Klassen Instanz anderer Klasse raus geben Java Basics - Anfänger-Themen 1
J KeyListener aus anderer Klasse bereitet Probleme Java Basics - Anfänger-Themen 1
B Klassen Auf Instanz anderer Klasse zugreifen Java Basics - Anfänger-Themen 1
D Methoden g.setColor funktioniert nicht bei Methodenaufruf in anderer Klasse Java Basics - Anfänger-Themen 1
N Variablen Variable in Main deklarieren und in anderer Methode nutzen Java Basics - Anfänger-Themen 12

Ähnliche Java Themen

Neue Themen


Oben