SWT编写界面窗口时让窗口处于屏幕中间

原创 2007年09月30日 10:24:00
 一、使用SWT本身
import org.eclipse.swt.graphics.Rectangle;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Shell;

public class LayoutUtil {

    
public static void centerShell(Display display,Shell shell){
        Rectangle displayBounds 
= display.getPrimaryMonitor().getBounds();
        Rectangle shellBounds 
= shell.getBounds();
        
int x = displayBounds.x + (displayBounds.width - shellBounds.width)>>1;
        
int y = displayBounds.y + (displayBounds.height - shellBounds.height)>>1;
        shell.setLocation(x, y);
    }

}

直接调用LayoutUtil.centerShell(Display display,Shell shell)即可使SWT窗口处于屏幕中央,其中,shell 要显示的Shell对象
二、借助
AWT包里面获取屏幕大小的方法
import java.awt.Toolkit;
/**
* 在屏幕中间显示Shell
@param shell 要显示的Shell对象
*/

private void centerShell(Shell shell)
{
         
//得到屏幕的宽度和高度
         int screenHeight = Toolkit.getDefaultToolkit().getScreenSize().height;
         
int screenWidth = Toolkit.getDefaultToolkit().getScreenSize().width;
         
//得到Shell窗口的宽度和高度
         int shellHeight = shell.getBounds().height;
         
int shellWidth = shell.getBounds().width;
         
//如果窗口大小超过屏幕大小,让窗口与屏幕等大
         if(shellHeight > screenHeight)
                   shellHeight 
= screenHeight;
         
if(shellWidth > screenWidth)
                  shellWidth 
= screenWidth;
        
//让窗口在屏幕中间显示
        shell.setLocation(( (screenWidth - shellWidth) / 2),((screenHeight - shellHeight) / 2) );
}

相关文章推荐

SWT编写界面窗口时让窗口处于屏幕中间

一、使用SWT本身 import org.eclipse.swt.graphics.Rectangle;  import org.eclipse.swt.widgets.Display;  ...

pb中控制窗口弹出在屏幕中间

  • 2011年05月06日 18:00
  • 308B
  • 下载

使用SWT中的Control UI和GridLayout实现类似eclipse preferences 窗口的布局

最近在学习和研究eclipse插件的开发, 从SWT 框架 入手. 把SWT的窗口小部件, 容器, 布局方式梳理了一下, 写出了一些比较综合的包含各种窗口小部 件的 布局 案例, 下面是一个比较完...
  • jarip
  • jarip
  • 2013年05月25日 15:57
  • 1244

使Excel嵌入到SWT窗口中

  • 2010年09月07日 14:12
  • 35KB
  • 下载

SWT窗口小部件Widget

部件是一个图形用户接口的元素,就是GUI应用中的按钮,文本框,选择框等常用的界面元素,这些部件可以响应事件与用户交互。 当部件的状态改变时,不管是由用户还是程序代码触发,部件都会自动重绘以显示最新状...

弹出在网页中间跳动的窗口

  • 2007年07月27日 14:04
  • 9KB
  • 下载

swt背景拖动不将图片拖出窗口

  • 2013年05月03日 09:42
  • 5.19MB
  • 下载

利用Windows绘制界面并且编写窗口过程函数

这篇blog主要是将的是如何实现窗口过程编程。 即通过窗口过程函数的编写来实现其如何处理消息的方式。 例如: #include #include /*LRESULT CALLBACK ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:SWT编写界面窗口时让窗口处于屏幕中间
举报原因:
原因补充:

(最多只允许输入30个字)