# JDialog + JFrame + keine Java Tasse



## MathiasBauer (25. Mrz 2008)

Hallo,

ich habe in meinen JDialog einen JFrame gepackt. Funktioniert soweit auch. Ich kann in meinem Frame auch das Java Icon durch ein beliebiges Icon austauschen.

Ich möchte aber gar kein Icon, d.h. die Java Tasse entfernen. Wie mache ich das? Vielen Dank im Voraus.


----------



## Wildcard (25. Mrz 2008)

Versuch mal setIcon(null). Wenn das nicht tut, muss ein transparentes gif her.


----------



## MathiasBauer (26. Mrz 2008)

Danke für den Hinweis.

setIcon(null) habe ich schon probiert, funktioniert leider nicht. Die Idee mit einem Transparenten Gif hatte ich auch schon. Das werde ich demnächst mal probieren. Das Problem besteht dann aber wahrscheinlich darin, dass der Text nicht ganz links steht, sondern eingerückt ist.  :cry:


----------



## L-ectron-X (26. Mrz 2008)

Die benötigte Methode heißt _setIconImage(Image image)_.



			
				Java-API-Doc Frame#setIconImage() hat gesagt.:
			
		

> If this parameter is null then the icon image is set to the default image, which may vary with platform.


Das heißt also, es geht nur mit einer transparenten Grafikdatei.


----------



## MathiasBauer (26. Mrz 2008)

Danke!


----------



## JPKI (26. Mrz 2008)

MathiasBauer hat gesagt.:
			
		

> ich habe in meinen JDialog einen JFrame gepackt.


Ich steh vielleicht grad aufm Schlauch, aber: Wie muss ich mir das vorstellen?


----------



## MathiasBauer (26. Mrz 2008)

Mit Icon habe ich das so gelöst:


```
JFrame frame = new JFrame();
	    		    Image img = Toolkit.getDefaultToolkit().getImage("test.gif");
	    	       MediaTracker mt = new MediaTracker(frame);
	    		    mt.addImage(img, 0, 0, 0);
	    	       try {
	    			    //Warten, bis das Image vollständig geladen ist,
	    			    mt.waitForAll();
	    		    } catch (InterruptedException e) {
	    			    //nothing
	    		    }
	    		    frame.setIconImage(img);
	    		    JDialog dialog = new JDialog(frame,"Importieren", true);
	    		   
	    		    dialog.setSize(300,400);
	    		    dialog.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
	    		    Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
	    		    Dimension size2 = dialog.getSize();
	    		    screenSize.height = screenSize.height/2;
	    		    screenSize.width = screenSize.width/2;
	    		    size2.height = size2.height/2;
	    		    size2.width = size2.width/2;
	    		    int y = screenSize.height - size2.height;
	    		    int x = screenSize.width - size2.width;
	    		    dialog.setLocation(x, y);
	    		    dialog.setVisible(true);
```

Laut euren Aussagen werde ich das "test.gif"-Icon durch ein transparentes ersetzen. Ob das "Importieren" dann irgendwie nach links zu rücken geht, muss ich erst noch ausprobieren.

Danke!


----------



## JPKI (26. Mrz 2008)

Ach so, ihr meintet den JDialog(JFrame,...)-Konstruktor :idea:


----------



## André Uhres (27. Mrz 2008)

So kommt kein Icon beim JDialog:

```
dialog.setResizable(false);
```


----------



## MathiasBauer (27. Mrz 2008)

Super! Funktioniert! Danke!


----------

