Hallo Leute,
ich versuche ein Programm welches bisher auf der Konsole funktioniert in eine grafische Oberfläche zu überführen. Das bereitet mir aber derzeit mehr Probleme als gedacht. Momentan möchte ich die Eingabe eines Spielernamens in einer Variable speichern. Ich komme aber nicht drauf wie es geht. Könnt Ihr mir evtl. helfen?
Ganz kurz zum Ablauf: Klasse Logic ruft die GUI auf und stellt entsprechende Fragen grafisch dar. Bei Eingabe des Spielernamens soll dieser in der Variable spielerName der Klasse Logic gespeichert werden.
ich versuche ein Programm welches bisher auf der Konsole funktioniert in eine grafische Oberfläche zu überführen. Das bereitet mir aber derzeit mehr Probleme als gedacht. Momentan möchte ich die Eingabe eines Spielernamens in einer Variable speichern. Ich komme aber nicht drauf wie es geht. Könnt Ihr mir evtl. helfen?
Ganz kurz zum Ablauf: Klasse Logic ruft die GUI auf und stellt entsprechende Fragen grafisch dar. Bei Eingabe des Spielernamens soll dieser in der Variable spielerName der Klasse Logic gespeichert werden.
Java:
public class MemoryLogic {
MemoryGUI gui = new MemoryGUI();
private int[] z;
private int zSumme;
private int[] e;
private int eSumme;
private Instant i1;
private double dZeit;
private String spielerName;
private boolean eingabeRichtig;
private String dateiName = "test.csv";
public MemoryLogic() {
z = new int[4];
zSumme = 0;
e = new int[4];
eSumme = 0;
eingabeRichtig = true;
}
public void eingabeSpielername() {
gui.aendern("Neues Spiel, geben Sie Ihren Namen ein: ");
//System.out.print("Neues Spiel, geben Sie Ihren Namen ein: ");
//spielerName = leser.nextLine();
spielerName = gui.inhaltTextField();
System.out.println(spielerName);
}
}
Java:
import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.Font;
import java.awt.Panel;
import java.awt.TextField;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JTextField;
public class MemoryGUI {
JFrame spFeld;
String spTitel = "Memory";
private int spWidth = 500;
private int spHeight = 400;
MemoryListener listener = new MemoryListener();
Panel panel1 = new Panel();
Panel panel2 = new Panel();
JLabel lbl1 = new JLabel();
JTextField textField = new JTextField();
JButton btnClose = new JButton("Schließen");
JButton btnNext = new JButton("Weiter");
public MemoryGUI() {
spFeld = new JFrame(spTitel);
spFeld.setPreferredSize(new Dimension(spWidth, spHeight));
//spFeld.setMaximumSize(new Dimension(400, 500));
spFeld.setLocationRelativeTo(null);
spFeld.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
spFeld.pack();
spFeld.setVisible(true);
}
public void aendern(String labelText) {
lbl1.setText(labelText);
lbl1.setFont(new Font("Arial", Font.BOLD, 14));
textField.setPreferredSize(new Dimension(200, 30));
textField.addActionListener(listener);
panel1.add(lbl1);
panel1.add(textField);
//panel2.add(textField);
spFeld.add(panel1);
//spFeld.add(panel2);
}
public String inhaltTextField() {
return textField.getText();
}
}
Java:
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JTextField;
public class MemoryListener implements ActionListener{
private String returnString = "";
@Override
public void actionPerformed(ActionEvent e) {
// welcher Code muss hier rein?
}
}