Java/SWT JFace Eclipse/Monitor

Материал из Java эксперт
Перейти к: навигация, поиск

Monitor example: center a shell on the primary monitor

   <source lang="java">

/*

* Monitor example snippet: center a shell on the primary monitor
*
* For a list of all SWT example snippets see
* http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-swt-home/dev.html#snippets
*/

import org.eclipse.swt.graphics.Rectangle; import org.eclipse.swt.widgets.Display; import org.eclipse.swt.widgets.Monitor; import org.eclipse.swt.widgets.Shell; public class Snippet120 {

 public static void main(String[] args) {
   Display display = new Display();
   Shell shell = new Shell(display);
   shell.setSize(200, 200);
   Monitor primary = display.getPrimaryMonitor();
   Rectangle bounds = primary.getBounds();
   Rectangle rect = shell.getBounds();
   int x = bounds.x + (bounds.width - rect.width) / 2;
   int y = bounds.y + (bounds.height - rect.height) / 2;
   shell.setLocation(x, y);
   shell.open();
   while (!shell.isDisposed()) {
     if (!display.readAndDispatch())
       display.sleep();
   }
   display.dispose();
 }

}

      </source>