# Icon in der Titelleiste von JDialog setzen



## Guest (11. Feb 2004)

Hallo alle,


kann mir jemand sagen, ob es möglich ist, in die Titelleiste eines JDialogs ein Icon zu setzen, wenn ja vllt, wie?

Danke voraus

Gruss
Suvd


----------



## Stefan1200 (11. Feb 2004)

Meinst du links das Bildchen?
Mach doch mal 
	
	
	
	





```
this.setImageIcon();
```

Edit: Ups, gerade gelesen, das geht nur beim Frame, nicht beim Dialog.


----------



## Beni (11. Feb 2004)

Eine direkte Lösung kenne ich nicht, aber wenn man dem Konstruktor eines JDialogs ein JFrame oder ein anderer JDialog übergibt, übernimmt der neue Dialog das Icon des alten Frames oder Dialogs.

mfg Beni


----------



## Guest (11. Feb 2004)

Das problem ist, ich hab ein Applet als Vaterfenster. Hab zwar so versucht:

    Frame f = JoptionPane.getFrameForComponent(mein Applet);
    f.setIconImage(Icon);

    MeinDialog d = new MeinDialog(f);

ging aber, nicht.

Also kann ich davon ausgehen, dass es grundsätzlich nicht geht???

Gruss
Suvd


----------



## Beni (11. Feb 2004)

> Also kann ich davon ausgehen, dass es grundsätzlich nicht geht???



Nein, siehe Gegenbeispiel:






Das ist ein modaler JDialog, der das JFrame im Hintergrund als Parent hat.

Irgendwie geht es also, aber für dieses Icon bin nicht ich verantwortlich, das geschah irgendwie automatisch.

mfg Beni


----------



## Roar (11. Feb 2004)

erstell in deinem applet doch einfach einen frame, weise dem ein icon zu, dann erstell den dialog mit dem frame als parent.


----------



## Beni (11. Feb 2004)

aber nicht _ Frame f = JoptionPane.getFrameForComponent(mein Applet); _
sondern _Frame f = new JFrame();_


----------



## Beni (11. Feb 2004)

Vielleicht noch ein Zusatz:



> Re: Icon in JDialog (...)
> 
> (...)I had the same problem and played arround with the code a bit,
> it seems that I get icons when the JDialog is resizable and no
> icons when it is not(...)



Vom Java Technology Forum


----------



## Roar (11. Feb 2004)

Beni hat gesagt.:
			
		

> aber nicht _ Frame f = JoptionPane.getFrameForComponent(mein Applet); _
> sondern _Frame f = new JFrame();_


also wenn schon 
JFrame f = new JFrame();
und ist das nicht selbsterklärend?
was sollte das erste auch bringen?

PS: kannst du mir sagen was für ein look and feel du in deinem screenshot benutzt hast?


----------



## Beni (11. Feb 2004)

Hi Roar

a) Frame funktioniert auch (denn _JFrame extends Frame_) :wink:
b) suvd hat schon was mit einem neuen Frame versucht, deshalb dachte ich, *sie* könnte Dich vielleicht missverstehen. 
c) Das ist das neue "Ozean", ein neues Thema für Metal. Ab JDK 1.5.0 dabei.  :wink: 

mfg Beni

*[Edit: er in sie korrigiert, sorry]*


----------



## Guest (12. Feb 2004)

1) vielen herzlichen Dank für eure Mithilfe. 

2) 





			
				Beni hat gesagt.:
			
		

> aber nicht Frame f = JoptionPane.getFrameForComponent(mein Applet);
> sondern Frame f = new JFrame();



mit 



			
				Beni hat gesagt.:
			
		

> Re: Icon in JDialog (...)
> 
> (...)I had the same problem and played arround with the code a bit,
> it seems that I get icons when the JDialog is resizable and no
> icons when it is not(...)



hat wunderbar funktioniert.

3)


			
				Beni hat gesagt.:
			
		

> Nein, siehe Gegenbeispiel:
> 
> 
> 
> ...



Hier geht es natürlich deswegen, weil du ein JFrame als Parentfenster hast. Der Icon wird übertragen.
Und auch ein Lob für den coolen look and feel 

4) Ich bin eine sie ;-)

5) wie gesagt, nochmals vielen Dank 

Gruss
Suvd


----------



## Roar (12. Feb 2004)

hmm ic hsollt mir mal die 1.5 beta runterladen..
wenns aber eine Swing anwendung ist, dann sollte man auch bei JFrame bleiben  :wink:


----------

