# JDialog.setResizable() - Problem



## Ghosti (8. Aug 2008)

Hallo Leute,

ich hab ein kleine Problem mit nem JDialog.

Wenn ich den JDialog aufrufe erscheint er auch und alles ist super. Jedoch will ich das er eine fixe Größe hat. Also setzte ich setResizable auf false. Wenn ich das gemacht habe verschwindet jedoch der Icon des Frames.

Weis einer wie ich das umgehen kann?


```
public Test(Frame parent, String title){
		super(parent, title, true);
		setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
		
                /** Sobald setResizable auf false ist Icon weg */
                //setResizable(false);
		
		initDialog();

		pack();
		setLocationRelativeTo(parent);
		setVisible(true);
	}
```

danke


----------



## André Uhres (9. Aug 2008)

Versuch mal den JDialog resizable zu lassen und dies zu machen:

```
...
pack();
setMinimumSize(getSize());//since 1.6
addComponentListener(new ComponentAdapter() {
    public void componentResized(ComponentEvent e) {
        setSize(getMinimumSize());
    }
});
...
```


----------



## Ghosti (9. Aug 2008)

@Andre Uhres

Danke für den Code jedoch kann man das Fenster ja trotzdem vergrößern, auch wenn es dann in den Ursprungszustand gesetzt wird.


setMinimumSize(getSize()) funktioniert, das Fenster kann nicht verkleinert werden.
Sollte man danach noch setMaximumSize(getSize()) setzen so lässt sich das Fenster immer noch vergrößern.

Lösung:


```
public Test(Frame parent, String title){
		super(parent, title, true);
		setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
		setResizable(false);
		
		Image icon = new ImageIcon("bild").getImage();
		setIconImage(icon);	
		
		initDialog();
		
		pack();
		
		setLocationRelativeTo(parent);
		setVisible(true);
	}
```

setIconImage(icon) separat nochmal aufrufen und Icon übergeben, ober gleich beim Konstruktor übergeben.

In der Bug Database habe ich nichts gefunden. Also wer eine bessere Lösung dafür hat, wie es ohne setIconImage geht bitte schreiben.

Gruß


----------

