Swing Windowbuilder Rückgabewert im Event

burak06

Mitglied
Hallo Zusammen,
seit 2 Woche versuche ich Java zu lernen und daher habe ich mir vorgenommen ein einfaches TicTacToe-Game mit Windowbuilder ohne KI zu programmieren. (ist noch unvollständig)
Ich habe leider ein Problem wo ich nicht weiter komme. Ich habe mehrere labels mit MouseEvent erstellt. In dem der Benutzer auf label bestätigt, wird der labeltext auf "X" gesetzt und anschließend wird die Methode play() aufgerufen der diese in array speichert. Anschließend wird die Methode ComputerPlay() aufgerufen, wo der Computer zufällig auf ein freies Feld spielt und diese zurück gibt. Hier fängt mein Problem an !! Die rückgabewert
new onStart().ComputerPlay() kann ich zwar innerhalb MouseEvent benutzen (damit ich die label0.setText("O") setzen kann)muss aber bei jedes Event eine Abfrage (Switch oder If) erstellen. Wie kann ich ich diese Rückgabewert an einer anderen Methode übergeben, damit ich auch die Objekte von private void initialize() (also die Labels) benutzen kann. So kann ich nur eine Abfrage erstellen :) vielen Dank

public class TicTacToeGame {

private JFrame frame;

public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
TicTacToeGame window = new TicTacToeGame();
window.frame.setVisible(true);

} catch (Exception e) {
e.printStackTrace();
}
}
});
}
public TicTacToeGame() {
initialize();
}


private void initialize() {
Border border = LineBorder.createGrayLineBorder();
frame = new JFrame();
frame.setBounds(100, 100, 576, 523);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.getContentPane().setLayout(null);

JLabel label0 = new JLabel("");
label0.setToolTipText("");
label0.setHorizontalAlignment(SwingConstants.CENTER);
label0.setForeground(Color.RED);
label0.setBackground(Color.ORANGE);
label0.setBounds(37, 32, 100, 100);
label0.setBorder(border);
frame.getContentPane().add(label0);


label0.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent e) {

if(label0.getText().equals(""))
{
String var = "label0";
label0.setText("X");
new onStart().play(label0.getText(), var);

String changeVar = new onStart().ComputerPlay();
}
else
{
JOptionPane.showMessageDialog(null, "Feld wurde bereits gespieltS", "Warnung", JOptionPane.OK_CANCEL_OPTION);
}

}
});

///////////////////// onStart.java

import java.util.Random;

import javax.swing.*;

public class onStart extends TicTacToeGame {

public static String[] result = new String[8];
public static int checkWin = 0;
Random zufall = new Random();


public void play(String labelname, String var)
{

if(var.equals("label0"))
{

if(result[0] == null)
{
result[0]= labelname;
//hier kommt winCheck() - methode
}
}

public String ComputerPlay()
{


while(true)
{
int zahlfeld = zufall.nextInt(8);
if(result[zahlfeld] == null)
{
result[zahlfeld] = "O";
return "label"+zahlfeld;
}
}


}
 

Janrupf

Mitglied
Hmm, speicher dir die Variable irgendwo ab und update sie dann. Und bitte setze deinen Code zwischen (code=Java) (/code) tags. Halt nur die "(" und die ")" gegen "[" und die "]" ersetzen.
 

Robat

Top Contributor
Hmm, speicher dir die Variable irgendwo ab und update sie dann. Und bitte setze deinen Code zwischen (code=Java) (/code) tags. Halt nur die "(" und die ")" gegen "[" und die "]" ersetzen.
Wenn du jemanden zeigen möchtest wie man Tags erstellst kannst du diese in [plain]..[/plain] Tags setzen. Damit maskierst du sie quasi und es wird nicht mehr als Tag an sich erkannt. Sieht dann also so aus--> [code=Java]MY CODE[/code] (Geschrieben: [plain][code=Java]MY CODE[/code][/plain] )

Gruß Robert
 

burak06

Mitglied
hey vielen Dank :) habe nun die Jlabel variablen ganz oben deklariert ( also ) und in initialize() label0 = new JLabel("") objekt von label erzeugt. Jetzt habe ich von überall zugriff :) vielen Dank. Ich poste den code damit jeder weißt wie ich es gelöst habe.

Java:
public class TicTacToeGame {

private JFrame frame;
private JLabel label0 = null; // also hier deklarieren !!!!!!!!!!!!

public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
TicTacToeGame window = new TicTacToeGame();
window.frame.setVisible(true);

} catch (Exception e) {
e.printStackTrace();
}


private void initialize() {
Border border = LineBorder.createGrayLineBorder();
frame = new JFrame();
frame.setBounds(100, 100, 576, 523);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.getContentPane().setLayout(null);

label0 = new JLabel(""); // hier Objekt erzeugen !!!!!!!!!!!!!!!!
label0.setToolTipText("");
label0.setHorizontalAlignment(SwingConstants.CENTER);
label0.setForeground(Color.RED);
label0.setBackground(Color.ORANGE);
label0.setBounds(37, 32, 100, 100);
label0.setBorder(border);
frame.getContentPane().add(label0);
.....
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
A Eclipse Windowbuilder Frameanzeige falsch AWT, Swing, JavaFX & SWT 3
L Button Funktion zuweisen in WindowBuilder AWT, Swing, JavaFX & SWT 22
R Swing WindowBuilder AWT, Swing, JavaFX & SWT 6
W WindowBuilder / Design-Vorschau schneidet den Rand ab AWT, Swing, JavaFX & SWT 0
B Swing Eclipse is running under 0, but this Java project has a 1.6 Java compliance level, so WindowBuilder AWT, Swing, JavaFX & SWT 2
S download WindowBuilder Pro Eclipse AWT, Swing, JavaFX & SWT 1
F Design-Anzeige im Windowbuilder AWT, Swing, JavaFX & SWT 3
F JList bei Windowbuilder AWT, Swing, JavaFX & SWT 8
ZoXlike Wie kann man ArrayList in JTabel einlesen? [WindowBuilder] AWT, Swing, JavaFX & SWT 1
M Swing Grundlegende Frage zu SWING mit WindowBuilder AWT, Swing, JavaFX & SWT 11
T Swing WindowBuilder: JList wird nicht angezeigt AWT, Swing, JavaFX & SWT 2
P Ubuntu - Eclipse - Windowbuilder AWT, Swing, JavaFX & SWT 0
A Swing Windowbuilder kann nicht parsen AWT, Swing, JavaFX & SWT 3
A Eclipse Windowbuilder AWT, Swing, JavaFX & SWT 2
U WindowBuilder "Design-Tab" AWT, Swing, JavaFX & SWT 2
B Windowbuilder - Icon für Button einbinden AWT, Swing, JavaFX & SWT 2
A Windowbuilder und JTable AWT, Swing, JavaFX & SWT 6
B Windowbuilder -> Export -> .jar AWT, Swing, JavaFX & SWT 23
X Swing Swing Oberflächen mit WindowBuilder Pro AWT, Swing, JavaFX & SWT 4
H Frage zu WindowBuilder Pro AWT, Swing, JavaFX & SWT 3
El_Lobo WindowBuilder als VE-Nachfolger? AWT, Swing, JavaFX & SWT 12
D WindowBuilder (GWT) AWT, Swing, JavaFX & SWT 3
J Swing Pro WindowBuilder in Eclipse AWT, Swing, JavaFX & SWT 2
kodela Falscher Rückgabewert AWT, Swing, JavaFX & SWT 12
J Action Listener Rückgabewert AWT, Swing, JavaFX & SWT 14
S Swing Eigenen JDialog mit Rückgabewert AWT, Swing, JavaFX & SWT 3
A Swingworker rückgabewert verwenden AWT, Swing, JavaFX & SWT 9
J Swing JDialog mit static-Funktion anzeigen -> Rückgabewert AWT, Swing, JavaFX & SWT 3
C Warten auf Rückgabewert im EventDispatchingThread AWT, Swing, JavaFX & SWT 8
L Rückgabewert aus Klasse mit JDialog AWT, Swing, JavaFX & SWT 6
GilbertGrape Wie komm ich an Rückgabewert des SwingWorkers? AWT, Swing, JavaFX & SWT 6
R Rückgabewert TreeSelectionListener für JInternalFrame AWT, Swing, JavaFX & SWT 4
A showConfirmDialog (Rückgabewert abfragen?) AWT, Swing, JavaFX & SWT 3
Juelin in javafx Event auslösen AWT, Swing, JavaFX & SWT 4
G Mouse Event in anderemm Event auslösen AWT, Swing, JavaFX & SWT 50
schoel27 Mehrere JButtons sollen das gleiche Event auslösen AWT, Swing, JavaFX & SWT 2
K Warum genau hat man einen Listener, dann ein Event und was ist ein Adapter AWT, Swing, JavaFX & SWT 2
izoards Java FX Window Event SHOWING AWT, Swing, JavaFX & SWT 17
Fridolin111 Der KeyListener Löst kein event aus AWT, Swing, JavaFX & SWT 6
B JavaFX Von welcher Klasse und zu welchem Zeitpunkt werden Event-Objekte erstellt? AWT, Swing, JavaFX & SWT 3
L JavaFX Ich suche das passende Textfield Event AWT, Swing, JavaFX & SWT 1
J CheckBoxListCell auf click event in listView reagieren AWT, Swing, JavaFX & SWT 1
W JavaFX Etwas Tabellenartiges + Cell-Content-Changed-Event (o.ä.) AWT, Swing, JavaFX & SWT 30
O Swing Event Dispatch Thread AWT, Swing, JavaFX & SWT 1
Z Befehl Action Event Verlassen AWT, Swing, JavaFX & SWT 4
F Event wenn Maus eine JList verlässt AWT, Swing, JavaFX & SWT 13
M JavaFX Absoluter Fokus während drag Event AWT, Swing, JavaFX & SWT 10
Pr0m3theus Animation nach Event AWT, Swing, JavaFX & SWT 6
K Event Handling ComboBox Event Handler AWT, Swing, JavaFX & SWT 7
Sugan Swipe Event? AWT, Swing, JavaFX & SWT 8
Tausendsassa Text changed event handler jTextField AWT, Swing, JavaFX & SWT 3
H Event Handling JavaFx - auf Event warten AWT, Swing, JavaFX & SWT 4
G Event Handling Event Handling in eigene Klasse AWT, Swing, JavaFX & SWT 4
M Mouse Click Event ohne ein JComponent Objekt AWT, Swing, JavaFX & SWT 3
L JDialog - Event wenn Parent größe ändert AWT, Swing, JavaFX & SWT 2
T Internes Event-handling in TextField/JTextField AWT, Swing, JavaFX & SWT 2
M Swing OnLoad-Event o. Ä. AWT, Swing, JavaFX & SWT 3
D Event Handling in Komplexen Anwendungen AWT, Swing, JavaFX & SWT 9
D Event Handling "Plötzlich" kein mouseMoved-Event AWT, Swing, JavaFX & SWT 2
A Minimalestopuhr: JLabel.setText() durch eigenes Event ändern AWT, Swing, JavaFX & SWT 6
J Swing JMenuItem-Event?? AWT, Swing, JavaFX & SWT 3
J Swing JTable-Event für einen Select?? AWT, Swing, JavaFX & SWT 3
A Mouse event und exit on close AWT, Swing, JavaFX & SWT 11
V Swing Custom JToggleButton in JTable - Click-Event geht erst beim zweiten Mal AWT, Swing, JavaFX & SWT 7
F Event Handling AWT, Swing, JavaFX & SWT 7
J Button Event nur einmal ausführen AWT, Swing, JavaFX & SWT 3
S SWT Shell durch Event in der Größe verändern AWT, Swing, JavaFX & SWT 7
J Speichern, Event, Hintergrund getAppletContext AWT, Swing, JavaFX & SWT 2
T Callback vs. Event listener AWT, Swing, JavaFX & SWT 7
F Frage zu Event KeyTyped bei jPanel AWT, Swing, JavaFX & SWT 4
S MenuBar ActionListener Event ... AWT, Swing, JavaFX & SWT 6
T Anzahl Event Listeners AWT, Swing, JavaFX & SWT 4
A Swing JButton int im Event AWT, Swing, JavaFX & SWT 9
G Swing Onkeyup Event AWT, Swing, JavaFX & SWT 3
P Action Event abfangen etwas anders? AWT, Swing, JavaFX & SWT 2
3 Swing NullPointerException in AW Event-0? AWT, Swing, JavaFX & SWT 5
F Swing Auf JComboBox-Event erst NACH Auswahl reagieren AWT, Swing, JavaFX & SWT 8
P Swing Event das ausgelöst wird, sobald Änderung der Größe Abgeschlossen ist AWT, Swing, JavaFX & SWT 4
A Shift-Tab-Event auslösen AWT, Swing, JavaFX & SWT 5
T Event Dispatch Thread und noch ein Thread AWT, Swing, JavaFX & SWT 7
W Swing Event bei Schließen des Fensters AWT, Swing, JavaFX & SWT 6
A Probleme mit dem KeyReleased-event AWT, Swing, JavaFX & SWT 3
J Doppelklick Event AWT, Swing, JavaFX & SWT 32
jueki Event bei Änderung der Spaltenbreite in einem JTable AWT, Swing, JavaFX & SWT 15
D jtabbedpane Event VOR tab-Wechsel AWT, Swing, JavaFX & SWT 3
N Swing JComboBox Event Problem AWT, Swing, JavaFX & SWT 5
M JTree => Event Dispatching Error AWT, Swing, JavaFX & SWT 2
D Event in Fenster ausgeben + Observer + kein Plan AWT, Swing, JavaFX & SWT 2
H warum kann ich das focus event nicht abfangen ? AWT, Swing, JavaFX & SWT 5
X Den Wert von JSpinner setzen ohne Event AWT, Swing, JavaFX & SWT 3
H KeyUp-Event/Ereignis AWT, Swing, JavaFX & SWT 6
C Event Frage AWT, Swing, JavaFX & SWT 7
M Swing WindowListener -> Event abbrechen? AWT, Swing, JavaFX & SWT 2
K JToggleButton deaktivieren (komplettes event nehmen) AWT, Swing, JavaFX & SWT 2
R JTextField - Event bei jedem Buchstaben AWT, Swing, JavaFX & SWT 2
R WindowClosing Event - Schließen rückgängig machen? AWT, Swing, JavaFX & SWT 2
M Actionlistener ohne Event -.-?! AWT, Swing, JavaFX & SWT 2
O Probleme beim Zeichnen und AWT-Event-Queue-0 Exception AWT, Swing, JavaFX & SWT 5
D PropertyChangeListener Event auswertung AWT, Swing, JavaFX & SWT 7
O FlowLayout Button Event zuweisen? AWT, Swing, JavaFX & SWT 7

Ähnliche Java Themen

Neue Themen


Oben