Here you can find the source of centerOnScreen(JFrame frame, int screenID)
Parameter | Description |
---|---|
frame | the frame to center |
screenID | the screen id |
public static void centerOnScreen(JFrame frame, int screenID)
//package com.java2s; /* //from www.j a v a2 s .com * VGraphicsUtil.java * * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER. * * Copyright (c) 2009?2012 Steinbeis Forschungszentrum (STZ ?lbronn), * Copyright (c) 2006?2012 by Michael Hoffer * * This file is part of Visual Reflection Library (VRL). * * VRL is free software: you can redistribute it and/or modify * it under the terms of the GNU Lesser General Public License version 3 * as published by the Free Software Foundation. * * see: http://opensource.org/licenses/LGPL-3.0 * file://path/to/VRL/src/eu/mihosoft/vrl/resources/license/lgplv3.txt * * VRL is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Lesser General Public License for more details. * * This version of VRL includes copyright notice and attribution requirements. * According to the LGPL this information must be displayed even if you modify * the source code of VRL. Neither the VRL Canvas attribution icon nor any * copyright statement/attribution may be removed. * * Attribution Requirements: * * If you create derived work you must do three things regarding copyright * notice and author attribution. * * First, the following text must be displayed on the Canvas: * "based on VRL source code". In this case the VRL canvas icon must be removed. * * Second, the copyright notice must remain. It must be reproduced in any * program that uses VRL. * * Third, add an additional notice, stating that you modified VRL. In addition * you must cite the publications listed below. A suitable notice might read * "VRL source code modified by YourName 2012". * * Note, that these requirements are in full accordance with the LGPL v3 * (see 7. Additional Terms, b). * * Publications: * * M. Hoffer, C.Poliwoda, G.Wittum. Visual Reflection Library - * A Framework for Declarative GUI Programming on the Java Platform. * Computing and Visualization in Science, 2011, in press. */ import java.awt.GraphicsDevice; import java.awt.GraphicsEnvironment; import java.awt.Rectangle; import javax.swing.JFrame; public class Main { /** * Centers a frame on screen. * * @param frame the frame to center * @param screenID the screen id */ public static void centerOnScreen(JFrame frame, int screenID) { Rectangle screenBounds = getScreenBounds(screenID); int x = screenBounds.x + screenBounds.width / 2 - frame.getWidth() / 2; int y = screenBounds.y + screenBounds.height / 2 - frame.getHeight() / 2; frame.setLocation(x, y); } /** * Returns the bounds of the screen in device coordinates. * * @param screenID the screen id * @return the screen bounds */ public static Rectangle getScreenBounds(int screenID) { GraphicsEnvironment ge = GraphicsEnvironment .getLocalGraphicsEnvironment(); GraphicsDevice[] gds = ge.getScreenDevices(); GraphicsDevice gd = gds[screenID]; return gd.getDefaultConfiguration().getBounds(); } }