Int Wert im Dialogfeld ändern

rgamer

Mitglied
Hallo zusammen.

Ich habe ein Hauptprogramm, in welchem eine int Variable deklariert und angezeigt wird.
Aus dem Hauptprogramm öffne ich ein Dialogfenster, aus welchem ein weiteres Dialogfenster geöffnet wird.
In diesem möchte ich die int-Variable ändern und die geänderte int-Variable soll dann im Hauptfenster wieder angezeigt werden.

Meine Frage ist:
Wie kann ich auf diese int-Variable im Dialogfenster zugreifen und dann ändern?

Hauptprogramm:
Java:
public class Lottoautomat extends Frame {
  
  public Frame f = new Frame();
  public Frame f2 = new Frame();
  public Frame f3 = new Frame();
  public Frame f4 = new Frame();
  public Frame f5 = new Frame();

 private Label l3 = new Label("Wählen Sie ihren Spielmodus!");
  
  private Button b1 = new Button("6 aus 49");

private NumberField tf1 = new NumberField();

public int guthaben =0; 

  public Lottoautomat ()
  {
    //Fenstereinstellungen
    setTitle("Lotto");
    setBounds(100,100,800,800);
    setLayout(null);
    setBackground(Color.green);
    guthaben = 15;
    
    //schließen des Fensters
    addWindowListener(new WindowAdapter(){
      public void windowClosing (WindowEvent evt) {
        dispose();
      }
    });
    
   
    Font font3 = new Font ("Arial", 0, 16);
    add(l3);
    l3.setBounds(75,200,350,75);
    l3.setFont(font3);
    
    add(tf1);
    tf1.setBounds(575,75,100,30);
    tf1.setInt(guthaben);

    add(b1);
    b1.setBounds(75,275,200,50);
    b1.addActionListener (new ActionListener(){;
      public void actionPerformed (ActionEvent e)
      {
        LottoautomatDLG6a49 lod = new LottoautomatDLG6a49(f,"6 aus 49",true);
        //tf1.setInt(guthaben-1);
      }
    });
    
    
    setVisible(true);
    
  }
  
}

Dialogprogramm 1:
Java:
public class LottoautomatDLG6a49 extends Dialog {
  
  // Anfang Attribute
  private FlowLayout flo = new FlowLayout();
  
  public Frame f = new Frame();
  public Frame f2 = new Frame();
 
  private Button b1 = new Button("Bestätigen und Spielen");
  
  
  // Ende Attribute
  
  public LottoautomatDLG6a49(Frame owner, String title, boolean modal) { 
    
    // Dialog-Initialisierung
    super(owner, title, modal);
    setBounds(100,100,800,600);
    setLayout(null);
    setBackground(Color.green);
    
    //Fenster schließen
    addWindowListener(new WindowAdapter() {
      public void windowClosing(WindowEvent evt) { dispose(); }
    });
    
    
    
    add(b1);
    b1.setBounds(50,350,250,50);
    b1.addActionListener (new ActionListener(){;
      public void actionPerformed (ActionEvent e)
      {
        
          LottoautomatDLGBestätigung lod2 = new LottoautomatDLGBestätigung (f2,"Eingabe bestätigt",true);
  
      }
    });
    
    
    
    // Anfang Komponenten
    
    // Ende Komponenten
    
    setResizable(false);
    setVisible(true);
  } // end of public LottoautomatDLG6a49
  
  
  
} // end of class DatenlayoutDLG


Dialogfenster2:
Java:
public class LottoautomatDLGBestätigung extends Dialog {
  
  // Anfang Attribute
  public Frame f = new Frame();
  
   
  
  // Ende Attribute
  
  public LottoautomatDLGBestätigung(Frame owner, String title, boolean modal) { 
    
    // Dialog-Initialisierung
    super(owner, title, modal);
    setBounds(250,250,600,400);
    setLayout(null);
    setBackground(Color.green);  
    //Fenster schließen
    addWindowListener(new WindowAdapter() {
      public void windowClosing(WindowEvent evt) { dispose(); }
    });    
    

//Hier will ich die Variable guthaben ändern!
    
    setResizable(false);
    setVisible(true); 
    
    
    
  }// end of public LottoautomatDLG
  
  
  
} // end of class DatenlayoutDLG
 
Zuletzt bearbeitet:
Moin,

Ich habe ein Hauptprogramm, in welchem eine int Variable deklariert und angezeigt wird.
Aus dem Hauptprogramm öffne ich ein Dialogfenster, aus welchem ein weiteres Dialogfenster geöffnet wird.
In diesem möchte ich die int-Variable ändern und die geänderte int-Variable soll dann im Hauptfenster wieder angezeigt werden.

Meine Frage ist:
Wie kann ich auf diese int-Variable im Dialogfenster zugreifen und dann ändern?
habe mir jetzt nicht den Code durchgelesen, aber Du solltest Dir für die Variable ganz einfach Getter- und Setter-Methoden basteln 🙂

Gruß
Klaus
 
du musst die Variable so deklarieren, dass du auch auf sie zugreifen kanst.

sonst hätte ich noch eine Idee ich weiß nicht ob das in Java funktioniert, aber in Basic kann man das über Lottoautomat.Guthaben machen. probiers mal aus
 
räume mal deine ganzen Frames auf, alleine deine Klasse Lottoautomat hat ja 5 davon und erbt zusätzlich noch von der Klasse Frame. Du übergibst dann auch ein Frame an deine anderen Klassen mit dem du vorher noch gar nichts gemacht hast. So kann das nix werden :noe:
 

Neue Themen


Zurück
Oben