Hallo,
Ich möchte gern einem modalen JDialog ein CardLayout zuweisen.
Das geht auch nur zeigt er es nicht an.
Meine, noch nicht ganz fertige, Methode bekommt einen Frame und einen namen übergeben.
Der JFrame ist der spätere "parent", also der Frame der gesperrt wird durchs modal setzen, der String ist dazu da um die Methode für mehrere verschiedene Dialoge benutzen zu können.
so wie es dort steht Funktioniert es nicht, wenn ich "JDialog dialog;" jedoch zu einem frame oder window mache funktioniert es. Leider kann man diese nicht modal setzen -.- ...
Vielen Dank für eure Hilfe.
Ich möchte gern einem modalen JDialog ein CardLayout zuweisen.
Das geht auch nur zeigt er es nicht an.
Meine, noch nicht ganz fertige, Methode bekommt einen Frame und einen namen übergeben.
Der JFrame ist der spätere "parent", also der Frame der gesperrt wird durchs modal setzen, der String ist dazu da um die Methode für mehrere verschiedene Dialoge benutzen zu können.
so wie es dort steht Funktioniert es nicht, wenn ich "JDialog dialog;" jedoch zu einem frame oder window mache funktioniert es. Leider kann man diese nicht modal setzen -.- ...
Java:
JDialog dialog;
public Dialoge(JFrame f,String s) {
if(s == "neueSammlung"){
dialog = new JDialog(f);
dialog.setTitle("Bla");
dialog.setModalityType(ModalityType.APPLICATION_MODAL);
dialog.setSize(new Dimension(400, 400));
dialog.setResizable(false);
dialog.setLocationRelativeTo(f);
dialog.setVisible(true);
dialog.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
CardLayout layout = new CardLayout();
JPanel a = new JPanel();
JPanel b = new JPanel();
JPanel c = new JPanel();
JPanel d = new JPanel();
JPanel k = new JPanel();
a.setBackground(Color.red);
b.setBackground(Color.yellow);
c.setBackground(Color.blue);
d.setBackground(Color.white);
k.setLayout(layout);
layout.addLayoutComponent(a, new String("erste"));
layout.addLayoutComponent(b, new String("zweite"));
layout.addLayoutComponent(c, new String("dritte"));
layout.addLayoutComponent(d, new String("vierte"));
k.add(a);
k.add(b);
k.add(c);
k.add(d);
dialog.add(k);
layout.show(k, "erste");
//textfeld = new JTextField(2);
//a.add(textfeld);
}
}
Vielen Dank für eure Hilfe.