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) );
}

让弹出层始终显示在屏幕正中间

一、block元素相对于父级居中:给该元素设置宽高(如果被内部元素撑开,也可不写);然后设置样式margin:0 auto;二、inline元素相对于父级居中:给父级元素设置样式:text-align...
  • wangji5850
  • wangji5850
  • 2016年03月29日 11:39
  • 11296

关于swing界面创建以及窗口放在屏幕中央的方法

/*********************************************************************************************** * ...
  • sinat_22013331
  • sinat_22013331
  • 2014年11月26日 16:41
  • 1350

SWT嵌入第三方程序,RCP集成

 集成 Windows 本地应用到 Eclipse RCP 程序中
  • dreajay
  • dreajay
  • 2014年07月24日 10:15
  • 1911

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

一、使用SWT本身 import org.eclipse.swt.graphics.Rectangle;  import org.eclipse.swt.widgets.Display;  ...
  • lm278858445
  • lm278858445
  • 2014年11月04日 00:11
  • 272

类似qq的浮动窗口 ,随着滚轴的滚动,始终处于屏幕的中间(能看到运动的过程)

  • 2016年12月21日 17:21
  • 32KB
  • 下载

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

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

SWT的可视化控件的X11窗口句柄简介

SWT与AWT本质上都是一套依赖于操作系统具体实现的GUI库。与swing在所有操作系统上外观一致的做法不同,awt和swt在不同的操作系统上的外观是和本地窗口一样的。 每一个swt和awt的窗口都...
  • wangyong0921
  • wangyong0921
  • 2013年08月22日 14:04
  • 753

使Excel嵌入到SWT窗口中

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

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

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

使用java中swt设计简单窗口

一、自己定义一个类似SashFrom的插件 我自己定义一个有两个Composite容器 package dong; import org.eclipse.swt.widgets.Compo...
  • dl_Secretary
  • dl_Secretary
  • 2018年01月08日 19:30
  • 13
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:SWT编写界面窗口时让窗口处于屏幕中间
举报原因:
原因补充:

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