# Mitte des Bildschirms herausfinden



## anfänger15 (26. Mrz 2007)

hallo,
wie kann ich die Mitte des Bildschirms herausfinden, um dann dort ein Dialog zu platzieren?
Hab das ganze schon mit setLocation getestet, aber wenn man dann eine andere Auflösung verwendet ist es doch nicht mehr in der Mitte, oder?

danke


----------



## JPKI (26. Mrz 2007)

```
Dimension dim = Toolkit.getDefaultToolkit().getScreenSize();
dialog.setLocation((dim.width-dialog.getSize().width)/2,(dim.height-dialog.getSize().height)/2);
```
Natürlich musst du die Dialoggröße vorher mittels setSize() festlegen! :meld: 
*Edit:* erster :bae:


----------



## Wildcard (26. Mrz 2007)

einfach nur setLocationRelativeTo(null)


----------



## André Uhres (27. Mrz 2007)

anfänger15 hat gesagt.:
			
		

> ..wie kann ich die Mitte des Bildschirms herausfinden, um dann dort ein Dialog zu platzieren?..




```
private void centerInDesktop(final Container container, final boolean maximize) {
        //Zentriert einen Frame/Dialog im Benutzerdesktop, 
        //abzüglich Beiwerk (->getScreenInsets):
        Toolkit kit = Toolkit.getDefaultToolkit();
        Dimension screenSize = kit.getScreenSize();
        GraphicsConfiguration config = container.getGraphicsConfiguration();
        Insets insets = kit.getScreenInsets(config);
        screenSize.width -= (insets.left + insets.right);
        screenSize.height -= (insets.top + insets.bottom);
        if(maximize) container.setSize(screenSize);
        container.setLocation((screenSize.width-container.getWidth())/2 + insets.left, 
                (screenSize.height-container.getHeight())/2 + insets.top);
    }
```
Oft setzt man einen Dialog auch relativ zum owner:

```
dialog.setLocationRelativeTo(dialog.getOwner());
```


----------



## anfänger15 (27. Mrz 2007)

ok danke an alle, die mir geholfen haben.


----------

