mam problem odnośnie "wymiany danych" w oknie.
mój problem polega na tym że klikając przycisk "dalej" program przechodzi do działania innej klasy, wciskając przycisk "back" wraca do wcześniejszej klasy. wszystko działa poprawnie, jednak boli mnie fakt że za każdym razem otwiera się nowe okno Javy. w jaki sposób ogarnąć program by było tylko jedno okienko i zmieniały się przyciski?
czytałem że można użyć setcontentpane() ale nie do końca wiem jak go użyć...
package cwiczebnie;
public class cwiczebneokno {
public static void main(String[] args)
{
new Okno();
}
}
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
public class Okno extends JFrame {
public Okno() {
super( "okno1" );
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setSize(200, 300);
setLocation(50,50);
setLayout(new FlowLayout());
class ButtonListener implements ActionListener{
public void actionPerformed(ActionEvent e){
EventQueue.invokeLater(new Runnable() {
@Override
public void run() {
new plaskie();
}
});
}
}
ButtonListener bl=new ButtonListener();
;
JButton
c2= new JButton("dalej");
c2.addActionListener(bl);
add(c2);
setVisible(true);
}
}
package cwiczebnie;
import java.awt.EventQueue;
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
public class plaskie extends JFrame {
public plaskie() {
super( "okno2" );
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setSize(200, 300);
setLocation(50,50);
setLayout(new FlowLayout());
class ButtonListener implements ActionListener{
public void actionPerformed(ActionEvent e){
EventQueue.invokeLater(new Runnable() {
@Override
public void run() {
new Okno();
}
});
}
}
ButtonListener bl=new ButtonListener();
;
JButton
c2= new JButton("back");
c2.addActionListener(bl);
add(c2);
setVisible(true);
}
}