werte zurück in GUI schreiben

erdmulch

Bekanntes Mitglied
Hallo zusammen

ich will ein kleines Rechenspiel machen.
ich habe eine "main" Klasse ("MyApplication")
eine GUI in der sich ein Button "next" befindet und ein Textfeld
sobald ich auf den Button drücke, soll in Textfield eine zahl zwischen 1 und 9 stehen

bisher hab ich es geschafft sobald ich auf den Button drücke, dass eine zufallszahl generiertt wird. Leider kann ich die Zahl nicht in die GUI übertragen bzw. ich weis nicht wie man so was macht. kann mir jemand einen Tipp geben?

danke im voraus


Java:
public class MyApplication 
{

	/**
	 * @param args
	 */
	public static void main(String[] args) 
	{
		// TODO Auto-generated method stub
		GUIRechenspiel g = new GUIRechenspiel();

	}

}

Java:
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JTextField;


public class GUIRechenspiel extends JFrame 
{
	  private JButton JBtnNext;
          private JTextField JTextFieldKarten;
          public JButton getJBtnNext() {
		return JBtnNext;
	}


	public void setJBtnNext(JButton jBtnNext) {
		JBtnNext = jBtnNext;
	}

  public GUIRechenspiel()
  {
	  JFrame JFrameHauptFenster = new JFrame("Rechenspiel");
	  JFrameHauptFenster.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
	  JFrameHauptFenster.setSize(1280,1024);  

	  JBtnNext = new JButton("Next");
	  JBtnNext.setBounds(50, 50, 100, 20);
	  JBtnNext.addActionListener(Listener);
	  JFrameHauptFenster.add(JBtnNext);

          JTextFieldKarten = new JTextField();
	  JTextFieldKarten.setBounds(100, 100, 200, 200);
	  JTextFieldKarten.addActionListener(Listener);
	  JFrameHauptFenster.add(JTextFieldKarten);

	  JFrameHauptFenster.setLayout(null);
	  JFrameHauptFenster.setVisible(true);

	}
}



Java:
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

public class Listener implements ActionListener
{
	private GUIRechenspiel gui;
	public Listener(GUIRechenspiel guirechenspiel)
	{
        gui = guirechenspiel;
	}

    public void actionPerformed(ActionEvent ae)
    {   
    	Object obj = ae.getSource();
    	
    	else if (obj.equals(gui.getJBtnNext())) 
    	{
    		System.out.println(this.karte(0, 100));
        }
    	
    	
    } 
    
    public static long karte(long min, long max)
    {
    	return min + Math.round(Math.random() * (max -min) );
    }
    
    
}
 
Du braucht Getter und Setter für deine Buttons und Textfelder.
Dann kannst du z.B so was schreiben

Java:
gui.getTextField.setText("Mein Text");
 
hi,

erstmal danke, funktioniert soweit.
ein kleines Problem hab ich noch und zwar will ich ein typ: long in meinem JtextField anzeigen lassen.
Java:
gui.getJTextFieldWuerfel().setText(this.wuerfel(1, 6));
allerdings erwartet er einen String
wie kann man sowas umgehen?
 

Zurück
Oben