# JDialog und eigenes Icon



## michael070380 (21. Mai 2004)

Hallo

weiss jemand wie ich einen JDialog mit einem selbst gewählten Icon versehen kann?
Ein Problem dabei ist vielleicht auch, dass ich den Dialog nur mit null als "Frame-Parameter" (new JDialog(null, true))  aufrufen kann.

Gruß
Michael B.


----------



## Beni (21. Mai 2004)

Das ist eines der ungelösten Rätsel dieser Sprache... Sun fand es nicht sinnvoll, Dialoge mit einem Icon auszustatten :arrow: es wird mit allen Mitteln verhindert.

Der einzige Trick, den ich kenne ist: ein Frame mit Icon erstellen, und dem Dialog im Konstruktor übergeben. (Niemand sagt, dass das Frame auch sichtbar sein muss :wink: )


----------



## michael070380 (21. Mai 2004)

Tja echt schade...

Gruß 
Michael B.


----------



## zd (21. Mai 2004)

was für einen dialog magste denn genau?
die JOptionPane.showXXXDialog() methoden kannste teilweise mit custom icons versehen, z.B.

```
//custom title, custom icon
JOptionPane.showMessageDialog(frame,
    "Eggs aren't supposed to be green.",
    "Inane custom dialog",
    JOptionPane.INFORMATION_MESSAGE,
    icon);    // <---- hier dein icon
```

http://java.sun.com/docs/books/tutorial/uiswing/components/dialog.html#create


----------



## Roar (21. Mai 2004)

@zd: er mein wohl ein icon in der titelleiste. wenn ich mich recht entsinne wird das icon in der methode in JOtionPane in der contentPane vom dialog dargestellt.

edit: das war mein 1000.er beitrag juppie )


----------



## michael070380 (21. Mai 2004)

Hi 
ich meinte kein JOptionPane sondern einen JDialog. Bei diesem ist als Standard-Icon die Kaffee-Tasse von Java sichtbar.
Gruß
Michael B.


----------



## DeeDee0815 (24. Jun 2007)

Natürlich geht das:


```
final JDialog ExampleFrame = new JDialog(this, "Beispiel-Frame", true);
ExampleFrame.pack();
ExampleFrame.setIconImage(Toolkit.getDefaultToolkit().getImage(getClass().getResource("Icon.png")));
ExampleFrame.setVisible(true);
```

Ich bin auf diesen Thread aber genau wegen JOptionPane gestoßen: Ist es also richtig, dass bei einem JOptionPane KEIN eigenes Icon in der Titelleiste möglich ist? Das wäre ja scheiße.

MfG
DeeDee0815


----------



## L-ectron-X (24. Jun 2007)

DeeDee0815 hat gesagt.:
			
		

> Ich bin auf diesen Thread aber genau wegen JOptionPane gestoßen: Ist es also richtig, dass bei einem JOptionPane KEIN eigenes Icon in der Titelleiste möglich ist? Das wäre ja scheiße.


Bei kleinen Dialogen, wie bspw. "Sie haben Änderungen am Dokument vorgenommen. Möchten Sie diese speichern?" gibts unter Windows keine Icons im Dialog. Unter Linux werden meist die Programm-Icons auch in Dialogen angezeigt.
Wegen einem Icon geht die Welt nicht unter.
Du kannst doch einen eigenen Dialog schreiben und diesen mit einem Icon versehen.


----------



## DeeDee0815 (24. Jun 2007)

Nun ja so schlimm finde ich es ja nun auch nicht. Abgesehen davon das ich eben Linuxer bin und so immer eine Kaffeetasse sehe  :wink: 

Also geht das nicht. Ist ja nicht so schlimm. Cool ist dafür ja, dass die Systemsymbole bei den Dialogen benutzt werden. Das ist echt mal Plattformunabhängig.

Dann danke für die Gewissheit...

MfG
DeeDee0815


----------



## Beni (24. Jun 2007)

DeeDee0815 hat gesagt.:
			
		

> Natürlich geht das: [...]


Zu der Zeit, als der Beitrag geschrieben wurde (im Jahr 2004) ging das nicht, denn diese Methode gibt es erst ab Java 1.6  :meld:


----------



## André Uhres (24. Jun 2007)

Vor Java 6 wird der Icon auch nur vom JFrame übernommen, wenn der JDialog "resizable" ist
(und auch noch bei Java 6, wenn man's auf die gleiche Art macht).


----------

