如何把Java程序窗口在屏幕中间显示_java

举例说明:

1、有一个200*200像素的窗口,想要把它放在800*600像素的屏幕中间,屏幕的位置应是(800/2,600/2)=(400,300)

2、为了设置该窗口左上角的位置,以使窗口中心与屏幕中心相吻合,必须符合2个小条件(1)窗口的一半或100像素必须落在屏幕的中心的左边(2)窗口的一半或100像素必须落在屏幕的中心的上方,因此窗口左上角的位置必须定位于(400-100,300-100)=(300,200)

如下图所示:

但在实际程序运行的过程中,程序的运行环境显示屏幕的实际尺寸和像素清晰度是不尽相同的,我们必须能动态的判断运行Java程序的计算机屏幕的大小,以使程序不管运行在什么计算机上都能居中,JAVA的AWT提供了一个Toolkit类,以使我们做出判断!

具体应用

1、在Toolkit类上调用一个静态方法getDefaultToolkit() ,以便为这个平台在AWT的Toolkit对象上获得一个句柄。

2、然后调用Toolkit对象的getScreenSize()方法,该方法返回一个Dimension(中文意为尺寸)类对象。Demension对象正好有两个public int属性,即width(以像素为单位),和heigth(以像素为单位)

3、把这种方法调用“系”在一起,因为我们不想长时间的保持Toolkit对象。我们只想暂时用它来恢复屏幕的Dimension对象

代码:

Dimension screenSize=Toolkit.getDefaultToolkit().getScreenSize();

因此不必向引用变量分配Toolkit对象的句柄。

程序代码:

import javax.swing.*;

public class FrameTest {

public static void main (String[] args) {

JFrame theFrame = new JFrame(“Whee!!!”);

theFrame.setSize(200, 200);

dimension frameSize=theFrame.getSize();

Dimension screenSize=Toolkit.getDefaultToolkit().getScreenSize();

int centerX = screenSize.width/2;

int centerY = screeSize.height/2;

theFrame.setlocation(centerX-halfwidth,centerY-halfHeight);

theFrame.setVisible(true);

}

}

总结

以上就是这篇文章的全部内容,希望对大家的学习和工作能有所帮助。如果有疑问的可以留言交流。

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索java窗口程序
java设置窗口位置
弹出窗口不在屏幕中间、弹出窗口在屏幕中间、打开窗口位于屏幕中间、java 窗口程序、最简单java窗口程序,以便于您获取更多的相关知识。

时间: 2024-10-08 23:45:52

如何把Java程序窗口在屏幕中间显示_java的相关文章

java编程,在屏幕上显示一个带标题的窗口,并添加一个按钮

问题描述 java编程,在屏幕上显示一个带标题的窗口,并添加一个按钮 编写程序,在屏幕上显示一个带标题的窗口,并添加一个按钮,当用户单击按钮时,弹出对话框,显示用户单击了按钮. 解决方案 找点Java 的 Swing学习资料,这种界面估计用netbean或idea都可以自动生成. 解决方案二: import java.awt.Frame; import java.awt.Graphics; import java.awt.GridLayout; import java.awt.event.Act

浅析java程序中hibernate的应用总结_java

我们知道如果用java连接数据库,大量的SQL代码,我们就想通过一种工具来操作数据库,我们首先想到的就是JDBC,但是想更好的针对类的属性进行操作,我们会选择Hibernate. 那么Hibernate 原理是什么呢?hibernate可以理解为是一个中间件它负责把java程序的sql语句接收过来发送到数据库,而数据库返回来的信息hibernate接收之后直接生成一个对象传给java. 一  首先我们先了解一下hibernate的工作7个流程:1.读取并解析配置文件   2.创建SessionF

Java程序中的延迟加载功能使用_java

使用多个对象或者大数据结构时,一种提升其性能的方式是运用延迟加载或赋值(来实现).将费时的操作尽可能的缩短的想法,从未实现.我通过一些例子来说明延迟加载技术在Java中如何运用,给予一些指引以在其他语言中能更易(使用)并作为核心语言的一部分. 一种使用场景是通过JTable来展示数百个包含元数据和测量值得域对象.初始化我们的域对象在内存中能保存两种类型的对象,即便在表格中仅显示部分元数据.构建该表格将花费数秒钟的时间,(但)我们可以接受再次展示数百项(数据).在做了一些分析过后,我们改进了我们的

JAVA程序内存溢出问题原因分析_java

本文较为详细的分析了JAVA程序内存溢出问题原因.分享给大家供大家参考.具体如下: 遇到一个线上系统报 java.lang.OutOfMemoryError: PermGen space 错误,需要定位一下问题.很久之前到时弄过这个,现在还真有点不记得了,但这个真的是一个非常有意思的问题,值得好好研究一下.首先第一反应当然是加上-XX:+PrintGCDetails参数来看具体的GC日志,但是由于程序是tomcat启动的,担心里面封装的东西太多不好定位,既然在windows下面,所以还是借助可视

详解Java程序读取properties配置文件的方法_java

在我们平时写程序的时候,有些参数是经常改变的,而这种改变不是我们预知的.比如说我们开发了一个操作数据库的模块,在开发的时候我们连接本地的数据库那么IP ,数据库名称,表名称,数据库主机等信息是我们本地的,要使得这个操作数据的模块具有通用性,那么以上信息就不能写死在程序里.通常我们的做法是用配置文件来解决. 各种语言都有自己所支持的配置文件类型.比如Python ,他支持.ini 文件.因为他内部有一个ConfigParser 类来支持.ini 文件的读写,根据该类提供的方法程序员可以自由的来操作

分享15款Java程序员必备的开发工具_java

如果你是一名Web开发人员,那么用膝盖想也知道你的职业生涯大部分将使用Java而度过.这是一款商业级的编程语言,我们没有办法不接触它. 对于Java,有两种截然不同的观点:一种认为Java是最简单功能最强大的编程语言之一,另一种则表示这种编程语言既难用又复杂. 下面这些工具或许功能和作用不同,但是有着一个共同的主旨,那就是--它们都是为了给Java编码和开发提供卓越的支持. 1. JDK(Java开发工具包)如果你打算用Java开发一些小程序和应用程序,那么首先得给自己准备一个类似于JDK的工具

Eclipse创建java程序可执行jar包教程_java

一.eclipse中,在要打成jar包的项目名上右击,出现如下弹出框,选择"export": 二.在接下来出现的界面中点击"jar file",然后next: 三.在接下来出现的界面中,如图所示勾选上要打包的项目以及其他选项,例如test项目:然后点击右边箭头所指的browse,选择打好的jar包要保存的目录,同时给自己的jar包命名,例如我这里选择存放在桌面,名字为jarTest;然后点击"next",在之后弹出的界面中再点击一次"n

实例解析Java程序中正则表达式的贪婪模式匹配_java

贪婪模式(Greedy): 数量表示符默认采用贪婪模式,除非另有表示.贪婪模式的表达式会一直匹配下去,直到无法匹配为止.如果你发现表达式匹配的结果与预期的不符,很有可能是因为--你以为表达式只会匹配前面几个字符,而实际上它是贪婪模式,所以会一直匹配下去. 贪婪与非贪婪,加上?为非贪婪: var s = '1023000'.match(/(\d+)(0*)/); s ["1023000", "1023000", ""] var s = '10230

swt-java中窗口隐藏与现显示,(子窗口回到父窗口)

问题描述 java中窗口隐藏与现显示,(子窗口回到父窗口) public static Shell shlIvmsv;//声明一个窗口管理器 创建一个窗口 J1 ...... ClientDemo.GetClientDemo().playMain();//创建另外一个窗口 J2 shlIvmsv.setVisible(false);//隐藏主界面 J1 ....... 然后我在 J2对应的程序中, ...... if(Main.shlIvmsv!=null){//显示PC主界面 Main.shl