2019独角兽企业重金招聘Python工程师标准>>>

以前总是尝试各种方法都没有能把组件放到屏幕中央,只能用死办法,设置绝对坐标,但这样就失去了可移植性,而且繁琐.今天仔细思考了一番,终于被我找出问题所在.

注意以下部分成功的前提条件是:pack(),必须放在以下代码之前执行,否则pack()置于之后将会覆盖前面的位置设置,前面的代码就失效了.这就是一直折磨我的问题.

使主窗口居中一般使用下面的方法:

第一种方法        
     int windowWidth = frame.getWidth();                     //获得窗口宽
     int windowHeight = frame.getHeight();                   //获得窗口高       
     Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();             //获取屏幕的尺寸
     int screenWidth = screenSize.width;                     //获取屏幕的宽
     int screenHeight = screenSize.height;                   //获取屏幕的高
     frame.setLocation(screenWidth/2-windowWidth/2, screenHeight/2-windowHeight/2);//设置窗口居中显示

第二种方法
     Toolkit kit = Toolkit.getDefaultToolkit();    // 定义工具包
     Dimension screenSize = kit.getScreenSize();   // 获取屏幕的尺寸
     int screenWidth = screenSize.width/2;         // 获取屏幕的宽
     int screenHeight = screenSize.height/2;       // 获取屏幕的高
     int height = this.getHeight();
     int width = this.getWidth();
     setLocation(screenWidth-width/2, screenHeight-height/2);

03、第三种方法,是jdk1.4之后提供的方法
     setLocationRelativeTo(othercomponent);
    这种方法是设定一个窗口的相对于另外一个窗口的位置(一般是居中于父窗口的中间),如果为null则窗口就居于屏幕的中央。

成功的前提条件是:pack(),必须放在以下代码之前执行,否则pack()置于之后将会覆盖前面的位置设置,

转载于:https://my.oschina.net/xby1993/blog/138813

java swing窗口放置屏幕中央问题思考相关推荐

  1. java如何在窗口上显示数据_如何把Java程序窗口在屏幕中间显示

    摘要:这篇Java开发技术栏目下的"如何把Java程序窗口在屏幕中间显示",介绍的技术点是"Java程序.屏幕中间.Java.显示.窗口.中间",希望对大家开发 ...

  2. java swing 悬浮_[Java教程]JAVA Swing窗口在桌面上浮动_星空网

    JAVA Swing窗口在桌面上浮动 2012-02-15 0 1 class Util { 2 private Toolkit tool; 3 private int width; 4 privat ...

  3. VC中窗口在屏幕中央显示

    为了使窗口在屏幕中央显示,采用如下代码: CRect rect; CClientDC dc(this); int width = dc.GetDeviceCaps(HORZRES); int heig ...

  4. 小demo, java swing窗口编程(JDK 1.6) (二)

    上一遍是纯java代码编写的窗口, 其实Java也有像VC++, C#或者VB那样子的窗体直接设计, Matisse Form 1. 新建Matisse form 2. 图形化设计窗口 3.  修改窗 ...

  5. 小demo, java swing窗口编程(JDK 1.6)

    //这段代码主要是创建一个登录窗口界面,在这个界面中有文本组件.普通按钮组件.标签组件,它们是按照网格组布局管理方式布局, import javax.swing.*;import java.awt.* ...

  6. java swing 窗口事件_Javaswing多类窗口怎么写按钮事件呢?

    首页窗口类packagecom.beyole.util;importjava.awt.BorderLayout;importjava.awt.GridLayout;importjavax.swing. ...

  7. java swing 窗口关闭事件_swing窗口关闭事件

    实例1:一个空的java窗口 // JFrameDemo1.java import javax.swing.*; //使用Swing类,必须引入Swing包 public class JFrameDe ...

  8. java关闭窗口按钮_java swing 使用按钮关闭窗口

    目的是给JButton添加点击操作,使指定JFrame窗口关闭. 网上不少说法是采用frame.dispose();的方法 但是采用frame.dispose();并没有使添加在frame上的wind ...

  9. java swing最小化_Java swing 窗口最小化到任务栏 点击右键显示菜单(复制代码即可运行查看效果)...

    Java swing 窗口最小化到任务栏 点击右键显示菜单(复制代码即可运行查看效果) package swing; import java.awt.AWTException; import java ...

  10. java swing 知乎_java swing 界面开发

    Swing界面开发 Swing体系组件:JFrame(窗体),JButton(按钮),JTree(树形结构)等 java中的界面类: java.awt包:颜色,布局,监听器等 javax.swing包 ...

最新文章

  1. xubuntu18.04安装Google拼音输入法
  2. cocos2d-x游戏引擎核心(3.x)----启动渲染流程
  3. 存在于实数域无限维空间的分子
  4. 使用SWig出现调用异常的情况
  5. seaborn线性关系数据可视化:时间线图|热图|结构化图表可视化
  6. 程序员的灯下黑:重知识轻技术(转)
  7. python nonlocal的用法_python global和nonlocal用法解析
  8. spark中local模式与cluster模式使用场景_详细总结spark基于standalone、yarn集群提交作业流程...
  9. 毕设题目:Matlab车辆计数
  10. SQL优化案例-自定义函数索引(五)
  11. java中将汉字转拼音,解决pinyin4j多音节问题
  12. 6 大神器在手,难怪是无敌的
  13. 现代汉语常用3500字=常见字2500字+次常见字1000字
  14. 2019年东北四省赛感想
  15. 一行代码,小龟机器人播放“生日快乐”
  16. “互联网+”环境下高职毕业生求职风险应对策略
  17. 阿里巴巴集团部分技术BLOG
  18. 玩转百度语音识别,就是这么简单
  19. maven install失败的问题
  20. [ 工具 ] ___ VT : VMware Tools

热门文章

  1. html输入输出文件,学习如何用 C 语言来进行文件输入输出操作
  2. vuejs知乎_vueJS (简版)amp; 响应式原理
  3. cad相对坐标快捷键_CAD里面绝对、相对、极坐标是什么?如何区别
  4. python中debug和run有什么区别_android应用程序开发中run和debug 有什么区别?
  5. python解析json文件三种_Python解析json文件相关知识学习
  6. c语言多xml文件操作,c语言 C#中对XML文件的操作.doc
  7. windows + hadoop + eclipse 过程记录
  8. HTML基础第九讲---表单
  9. 升级 Xcode 4.3 后找不到 xcodebuild 的解决方法
  10. 菜鸟学Linux 第096篇笔记 nginx