<!--
google_ad_client = "pub-4615277071069293";
/* 728x15, 创建于 08-6-6 */
google_ad_slot = "7146726956";
google_ad_width = 728;
google_ad_height = 15;
//-->
摘
要:在进行JavaGUI开发的过程中,经常为了考虑用户的方便,设置我们窗体的一些特性,本文就窗体定位做一说明。开发一个工具类,可以在开发的同时直接调用(含源代码,
例子)。
采用的计算方法就是通过Frame提供的API(setLoaction)计算出该窗体的左上角的坐标位置。整个思路如下图所示:
从图中我们可以看出,如果计算出左上角的坐标,那么我们就可以确定我们的窗体在整个屏幕居中显示。窗体的宽度和高度,是通过我
们设定的(setSize),那么屏幕的宽度呢?我们每个人用的屏幕是不同的。别急,Java给我们提供了一个工具类(Toolkit),让我们来获得当前屏幕的宽度和高度。整个是实现
代码如下(使用例子在下):
-
package net.csdn.blog.qb2049_xg.tools;
-
import java.awt.Component;
-
import java.awt.Dimension;
-
import
java.awt.Toolkit;
-
-
-
public class MidScr
- {
-
-
private int x=0;
-
private int y=0;
-
-
public MidScr
(Component jc)
- {
-
- Dimension d_c=jc.getSize();
- Dimension d_scr=Toolkit.getDefaultToolkit
().getScreenSize();
-
double x1=(d_scr.getWidth()-d_c.getWidth())/2;
-
double y1=(d_scr.getHeight()-d_c.getHeight())/2;
-
x=new Double(x1).intValue
();
-
y=new Double(y1).intValue();
- }
-
-
-
public int getX()
- {
-
return x;
- }
-
public int getY()
- {
-
return y;
- }
- }
中间想要说明的就是Dimension的使用,“Dimension 类封装单个对象中组件的宽度和高度(精确到整数)”,我们用它来封装我们的屏
幕和窗体的宽高。下面是使用的例子:
-
package net.csdn.blog.qb2049_xg.exam;
-
import javax.swing.JFrame;
-
import net.csdn.blog.qb2049_xg.tools.MidScr;
-
-
-
public class MidFrame extends JFrame
- {
-
public MidFrame(){
-
-
this.setSize(400,500);
-
this.setTitle("窗口居中显
示");
-
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
-
-
MidScr ms=new MidScr(this);
-
-
this.setLocation(ms.getX(), ms.getY
());
-
this.setVisible(true);
- }
-
public
static void main(String args[]){
-
-
JFrame.setDefaultLookAndFeelDecorated(true);
-
new MidFrame();
-
}
- }
效果图如下:
如果你要什么更好的建议或是错误提示,请你留下你的”评论“,非常感谢!
<!--
google_ad_client = "pub-4615277071069293";
/* 728x90, 创建于 08-6-3 */
google_ad_slot = "8286133791";
google_ad_width = 728;
google_ad_height = 90;
//-->
<!--
google_ad_client = "pub-4615277071069293";
/* 728x90, 创建于 08-8-21 */
google_ad_slot = "3138874845";
google_ad_width = 728;
google_ad_height = 90;
//-->
分享到:
相关推荐
下面小编就为大家带来一篇Java窗体居中显示的2种方法(实例讲解)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
主要介绍了Java Swing实现让窗体居中显示的方法,结合实例形式分析了swing使用setBounds方法控制窗口布局的相关操作技巧,需要的朋友可以参考下
该程序主要演示 java桌面应用程序中窗体的 显示位置 基于屏幕或父窗体显示 左上(下)角 右上(下)角 居中 随即
// 简单的居中方法 在窗体基本格式类 Jframe 中有详细的居中方法 this.setLocationRelativeTo(null); // 设置关闭窗口 this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // 调用方法 menu()...
//在屏幕中间显示(居中显示) this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//退出关闭JFrame this.setVisible(true);//显示窗体 //锁定窗体 this.setResizable(false); } }
MenuItem show = new MenuItem("显示窗体"); MenuItem exit = new MenuItem("退出窗体"); trayIcon = new TrayIcon(icon.getImage(), "学生管理系统", menu); trayIcon.addMouseListener(new MouseAdapter...
// 在屏幕中居中显示 frame.add(this.panel); // 添加面板 frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // 设置X号后关闭 //设置按钮 this.registerButton.addActionListener(this); //注册按钮 ...
使用setLocationRelativeTo()方法设置窗口居中显示:使用setVi sible()以及 setDefaultCloseOperation() 方法设置窗口可见和单击窗体右上角的关闭图标后程序会做出怎样的处理。 日历实现部分 CalendarClass 首先创建...
//让窗口居中 this.setVisible(true); this.setDefaultCloseOperation(EXIT_ON_CLOSE); } @Override public void actionPerformed(ActionEvent e){ jf2=new SecondFrame(); jf2.windows2(); jf2.Realize();...
// 设置位置,居中 Dimension SreenSize = Toolkit.getDefaultToolkit().getScreenSize(); int x = (SreenSize.width - 400) / 2; int y = (SreenSize.height - 300) / 2; this.setBounds(x, y, 400, 300)...
/*******************************************设定窗体的位置(居中)*******************************************/ Toolkit kit=Toolkit.getDefaultToolkit(); Dimension screen=kit.getScreenSize(); ...
2) 修改静态编译后“选择列表框”在“单选”属性为真时不显示项目内容的BUG 3) 修改核心库中“播放音乐”命令在没有声卡或声卡被禁用时未正确释放资源的BUG 4) 修改静态编译后“读配置项”命令在第三个参数“配置...