本文整理了Java中java.awt.Window.getGraphicsConfiguration()
方法的一些代码示例,展示了Window.getGraphicsConfiguration()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Window.getGraphicsConfiguration()
方法的具体详情如下:
包路径:java.awt.Window
类名称:Window
方法名:getGraphicsConfiguration
[英]This method returns the GraphicsConfiguration used by this Window.
[中]此方法返回此窗口使用的图形配置。
代码示例来源:origin: chewiebug/GCViewer
public Dimension getPreferredSize() {
Dimension size = super.getPreferredSize();
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
Insets scnMax = Toolkit.getDefaultToolkit().getScreenInsets(getOwner().getGraphicsConfiguration());
int taskBarSize = scnMax.bottom;
int usableScreenHeight = screenSize.height - taskBarSize - 50;
if (size.height > (usableScreenHeight)) {
size.height = usableScreenHeight;
}
return size;
}
代码示例来源:origin: org.netbeans.api/org-openide-util
/**
* Finds out the monitor where the user currently has the input focus.
* This method is usually used to help the client code to figure out on
* which monitor it should place newly created windows/frames/dialogs.
*
* @return the GraphicsConfiguration of the monitor which currently has the
* input focus
*/
private static GraphicsConfiguration getCurrentGraphicsConfiguration() {
Component focusOwner = KeyboardFocusManager.getCurrentKeyboardFocusManager().getFocusOwner();
if (focusOwner != null) {
Window w = SwingUtilities.getWindowAncestor(focusOwner);
if (w != null) {
return w.getGraphicsConfiguration();
} else {
//#217737 - try to find the main window which could be placed in secondary screen
for( Frame f : Frame.getFrames() ) {
if( "NbMainWindow".equals(f.getName())) { //NOI18N
return f.getGraphicsConfiguration();
}
}
}
}
return GraphicsEnvironment.getLocalGraphicsEnvironment().getDefaultScreenDevice().getDefaultConfiguration();
}
代码示例来源:origin: org.netbeans.api/org-openide-util-ui
/**
* Finds out the monitor where the user currently has the input focus.
* This method is usually used to help the client code to figure out on
* which monitor it should place newly created windows/frames/dialogs.
*
* @return the GraphicsConfiguration of the monitor which currently has the
* input focus
*/
private static GraphicsConfiguration getCurrentGraphicsConfiguration() {
Component focusOwner = KeyboardFocusManager.getCurrentKeyboardFocusManager().getFocusOwner();
if (focusOwner != null) {
Window w = SwingUtilities.getWindowAncestor(focusOwner);
if (w != null) {
return w.getGraphicsConfiguration();
} else {
//#217737 - try to find the main window which could be placed in secondary screen
for( Frame f : Frame.getFrames() ) {
if( "NbMainWindow".equals(f.getName())) { //NOI18N
return f.getGraphicsConfiguration();
}
}
}
}
return GraphicsEnvironment.getLocalGraphicsEnvironment().getDefaultScreenDevice().getDefaultConfiguration();
}
代码示例来源:origin: stackoverflow.com
w.setBounds(w.getGraphicsConfiguration().getBounds());
w.setVisible(true);
代码示例来源:origin: stackoverflow.com
Window w=new Window(null)
{
@Override
public void paint(Graphics g)
{
final Font font = getFont().deriveFont(48f);
g.setFont(font);
g.setColor(Color.RED);
final String message = "Hello";
FontMetrics metrics = g.getFontMetrics();
g.drawString(message,
(getWidth()-metrics.stringWidth(message))/2,
(getHeight()-metrics.getHeight())/2);
}
@Override
public void update(Graphics g)
{
paint(g);
}
};
w.setAlwaysOnTop(true);
w.setBounds(w.getGraphicsConfiguration().getBounds());
w.setBackground(new Color(0, true));
w.setVisible(true);
代码示例来源:origin: stackoverflow.com
public GraphicsDevice getMonitorWindowIsOn(Window window)
{
// First, grab the x,y position of the Window object
GraphicsConfiguration windowGraphicsConfig = window.getGraphicsConfiguration();
if (windowGraphicsConfig == null)
{
return null; // Should probably be handled better
}
Rectangle windowBounds = windowGraphicsConfig.getBounds();
for (GraphicsDevice gd : ge.getScreenDevices()) {
Rectangle monitorBounds = gd.getDefaultConfiguration().getBounds();
if (monitorBounds.contains(windowBounds.x, windowBounds.y))
{
return gd;
}
}
// um, return null I guess, should make this default better though,
// maybe to the default screen device, except, I am sure if no monitors are
// connected that may be null as well.
return null;
}
代码示例来源:origin: com.github.lgooddatepicker/LGoodDatePicker
/**
* getScreenTotalArea, This returns the total area of the screen. (The total area includes any
* task bars.) This function accounts for multi-monitor setups. If a window is supplied, then
* the the monitor that contains the window will be used. If a window is not supplied, then the
* primary monitor will be used.
*/
static public Rectangle getScreenTotalArea(Window windowOrNull) {
Rectangle bounds;
if (windowOrNull == null) {
GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment();
bounds = ge.getDefaultScreenDevice().getDefaultConfiguration().getBounds();
} else {
GraphicsConfiguration gc = windowOrNull.getGraphicsConfiguration();
bounds = gc.getBounds();
}
return bounds;
}
代码示例来源:origin: mucommander/mucommander
/**
* Computes the screen's insets for the specified window and returns them.
* <p>
* While this might seem strange, screen insets can change from one window
* to another. For example, on X11 windowing systems, there is no guarantee that
* a window will be displayed on the same screen, let alone computer, as the one
* the application is running on.
* </p>
* @param window the window for which screen insets should be computed.
* @return the screen's insets for the specified window
*/
public static Insets getScreenInsets(Window window) {
return Toolkit.getDefaultToolkit().getScreenInsets(window.getGraphicsConfiguration());
}
代码示例来源:origin: mucommander/mucommander
/**
* Computes the screen's insets for the specified window and returns them.
* <p>
* While this might seem strange, screen insets can change from one window
* to another. For example, on X11 windowing systems, there is no guarantee that
* a window will be displayed on the same screen, let alone computer, as the one
* the application is running on.
* </p>
* @param window the window for which screen insets should be computed.
* @return the screen's insets for the specified window
*/
public static Insets getScreenInsets(Window window) {
return Toolkit.getDefaultToolkit().getScreenInsets(window.getGraphicsConfiguration());
}
代码示例来源:origin: mucommander/mucommander
/**
* Returns the maximum dimensions for a full-screen window.
*
* @param window window who's full screen size should be computed.
* @return the maximum dimensions for a full-screen window
*/
public static Rectangle getFullScreenBounds(Window window) {
Toolkit toolkit;
Dimension screenSize;
toolkit = Toolkit.getDefaultToolkit();
screenSize = toolkit.getScreenSize();
Insets screenInsets = toolkit.getScreenInsets(window.getGraphicsConfiguration());
return new Rectangle(screenInsets.left, screenInsets.top, screenSize.width-screenInsets.left-screenInsets.right, screenSize.height-screenInsets.top-screenInsets.bottom);
}
}
代码示例来源:origin: org.jdesktop.bsaf/bsaf
/**
* Calculates default location for the specified window.
* @return default location for the window
* @param window the window location is calculated for.
* It should not be null.
*/
public static Point defaultLocation(Window window) {
GraphicsConfiguration gc = window.getGraphicsConfiguration();
Rectangle bounds = gc.getBounds();
Insets insets = window.getToolkit().getScreenInsets(gc);
int x = bounds.x + insets.left;
int y = bounds.y + insets.top;
return new Point(x, y);
}
代码示例来源:origin: stackoverflow.com
static public Insets getScreenInsets(Window wnd) {
Insets si;
try {
if(wnd==null) { si=Toolkit.getDefaultToolkit().getScreenInsets(new Frame().getGraphicsConfiguration()); }
else { si=wnd.getToolkit() .getScreenInsets(wnd.getGraphicsConfiguration()); }
} catch(NoSuchMethodError thr) { si=new Insets(0,0,0,0); }
return si;
}
代码示例来源:origin: org.bitbucket.goalhub.simpleide/jedit
private static Point fitInScreen(Point p, Window w, int lineHeight)
{
Rectangle screenSize = w.getGraphicsConfiguration().getBounds();
if(p.y + w.getHeight() >= screenSize.height)
p.y = p.y - w.getHeight() - lineHeight;
return p;
} //}}}
代码示例来源:origin: org.codehaus.jtstand/jtstand-desktop
private static Rectangle getUsableDeviceBounds(Window window) {
Window owner = window.getOwner();
GraphicsConfiguration gc = null;
if (owner == null) {
gc = GraphicsEnvironment.getLocalGraphicsEnvironment()
.getDefaultScreenDevice().getDefaultConfiguration();
} else {
gc = owner.getGraphicsConfiguration();
}
Insets insets = Toolkit.getDefaultToolkit().getScreenInsets(gc);
Rectangle bounds = gc.getBounds();
bounds.x += insets.left;
bounds.y += insets.top;
bounds.width -= (insets.left + insets.right);
bounds.height -= (insets.top + insets.bottom);
return bounds;
}
代码示例来源:origin: in.jlibs/org-openide-util
/**
* Finds out the monitor where the user currently has the input focus.
* This method is usually used to help the client code to figure out on
* which monitor it should place newly created windows/frames/dialogs.
*
* @return the GraphicsConfiguration of the monitor which currently has the
* input focus
*/
private static GraphicsConfiguration getCurrentGraphicsConfiguration() {
Component focusOwner = KeyboardFocusManager.getCurrentKeyboardFocusManager().getFocusOwner();
if (focusOwner != null) {
Window w = SwingUtilities.getWindowAncestor(focusOwner);
if (w != null) {
return w.getGraphicsConfiguration();
}
}
return GraphicsEnvironment.getLocalGraphicsEnvironment().getDefaultScreenDevice().getDefaultConfiguration();
}
代码示例来源:origin: org.bitbucket.goalhub.simpleide/jedit
private static Point fitInScreen(Point p, Window w, int lineHeight)
{
Rectangle screenSize = w.getGraphicsConfiguration().getBounds();
if(p.y + w.getHeight() >= screenSize.height)
p.y = p.y - w.getHeight() - lineHeight;
return p;
} //}}}
代码示例来源:origin: org.gosu-lang.gosu/gosu-editor
public static void ensureWindowIsVisible( Window w )
{
int width = w.getWidth();
int height = w.getHeight();
Toolkit toolkit = Toolkit.getDefaultToolkit();
GraphicsConfiguration gc = w.getGraphicsConfiguration();
Insets screenInsets = toolkit.getScreenInsets( gc );
Rectangle screenSize = gc.getBounds();
w.setLocation( Math.max( screenInsets.left, Math.min( w.getX(), screenSize.width - screenInsets.right - width ) ),
Math.max( screenInsets.top, Math.min( w.getY(), screenSize.height - screenInsets.bottom - height ) ) );
}
代码示例来源:origin: net.sourceforge.mydoggy/mydoggy-plaf
public static void restoreFullScreenWindow(Window window) {
Rectangle bounds = fullScreenBounds.remove(window);
if (bounds != null) {
window.setBounds(bounds);
} else {
GraphicsDevice graphicsDevice = window.getGraphicsConfiguration().getDevice();
if (graphicsDevice.isFullScreenSupported())
graphicsDevice.setFullScreenWindow(null);
}
}
代码示例来源:origin: otros-systems/otroslogviewer
public static void centerOnScreen(Window target) {
DisplayMode displayMode = target.getGraphicsConfiguration().getDevice().getDisplayMode();
int displayHeight = displayMode.getHeight();
int displayWidth = displayMode.getWidth();
Dimension targetSize = target.getSize();
Point frameLocation = new Point(displayWidth / 2 - targetSize.width / 2, displayHeight / 2 - targetSize.height / 2);
target.setLocation(frameLocation);
}
代码示例来源:origin: net.anwiba.commons/anwiba-commons-swing-core
public static void centerToScreen(final Window window) {
if (window == null) {
return;
}
final DisplayMode displayMode = window.getGraphicsConfiguration().getDevice().getDisplayMode();
final Point location = getCenterToScreenLocation(displayMode, window.getSize());
window.setLocation(location);
return;
}
内容来源于网络,如有侵权,请联系作者删除!