设置窗体居中坐标图解及示例代码

简介: 注意:  窗体相对于屏幕默认的坐标为屏幕原点(0, 0),  为了便于理解,将窗体默认的坐标设为(m/2, n/2),   那么设置窗体居中,  就是窗体的坐标从(m/2, n/2)移动到(a/2, b/2)即可。

注意:
  窗体相对于屏幕默认的坐标为屏幕原点(0, 0),
  为了便于理解,将窗体默认的坐标设为(m/2, n/2),

  那么设置窗体居中,
  就是窗体的坐标从(m/2, n/2)移动到(a/2, b/2)即可。

设置窗体居中坐标图解如下图所示:

示例代码如下:

 1     /*
 2      * 思路:
 3      *         A:获取屏幕的宽和高
 4      *         B:获取窗体的宽和高
 5      *         C:(用屏幕的宽-窗体的宽)/2,(用屏幕的高-窗体的高)/2作为窗体的新坐标。
 6      */
 7     // 设置窗体居中
 8     public static void setFrameCenter(JFrame jf) {
 9         // 获取工具包对象
10         Toolkit tk = Toolkit.getDefaultToolkit();
11 
12         // 获取屏幕的宽和高
13         // 获取屏幕的尺寸对象
14         Dimension d = tk.getScreenSize();
15         double srceenWidth = d.getWidth();
16         double srceenHeigth = d.getHeight();
17 
18         // 获取窗体的宽和高
19         int frameWidth = jf.getWidth();
20         int frameHeight = jf.getHeight();
21 
22         // 得到窗体的新坐标
23         int width = (int) (srceenWidth - frameWidth) / 2;
24         int height = (int) (srceenHeigth - frameHeight) / 2;
25 
26         // 设置窗体坐标
27         jf.setLocation(width, height);
28     }

 

我的GitHub地址: https://github.com/heizemingjun
我的博客园地址: http://www.cnblogs.com/chenmingjun
我的蚂蚁笔记博客地址: http://blog.leanote.com/chenmingjun
Copyright ©2018 黑泽明军
【转载文章务必保留出处和署名,谢谢!】
目录
打赏
0
0
0
0
24
分享
相关文章
Winform控件优化之Paint事件实现圆角组件(提取绘制圆角的扩展方法)
Paint事件方法中实现圆角控件不要通过事件参数`e.ClipRectangle`获取控件区域范围,原因见最后介绍;注意设置控件背景透明(参见[Winform控件优化之背景透明那些事2...
890 0
Winform控件优化之Paint事件实现圆角组件(提取绘制圆角的扩展方法)
uniapp四个元素点击那个哪个变色,其他的还变原来的颜色
uniapp四个元素点击那个哪个变色,其他的还变原来的颜色
475 0
WPF获取某控件的位置,也就是偏移量
原文:WPF获取某控件的位置,也就是偏移量 此段示例在MSDN中可见。XAML代码如下:   1、如果只需要获取相对于其父级的偏移量,则可以使用以下方法: // Return the offset vector for the TextBlock object.
1531 0
WPF如何得到一个在用户控件内部的元素的坐标位置
原文:WPF如何得到一个在用户控件内部的元素的坐标位置 例如有这样一个用户控件: 这是主窗口: ...
1447 0
Qt编写自定义控件29-颜色选取面板
一、前言 这个控件主要是模仿QColorDialog对话框中的颜色选取面板,提供一个十字形状的标识器,鼠标按下开始选取颜色,移动到哪就选择该处的颜色值,对应右侧颜色条放大显示,本控件的难点就是如何绘制一个边缘框限定鼠标只能在此框中移动,还有一个就是如何绘制颜色渐变的背景颜色集合,这里采用的是对每一个像素的高度区域设置不同的开始颜色+中间颜色+结束颜色,作为渐变颜色,然后设置QLinearGradient作为画笔的颜色进行绘制,其实就是假设宽度是100,其实是绘制了100条垂直方向的竖线而形成的效果。
1177 0
实现 Table 的行交替颜色、选中行变色的一种方法。演示+源码
.css_Grid1 { padding:3px; border:1px; border-width:1px; border-color:#ffee00; width:100%; border-collapse:collapse; } .
820 0
QML学习笔记(四)-Canva画板画图功能-跟随鼠标位置进行随笔画
参考博主文章进行整理了代码,实现功能参考:https://blog.csdn.net/UbuntuTouch/article/details/46375697 源码:https://github.com/sueRimn/QML-ExampleDemos 更多的鼠标实时画图-画直线画圆画矩形等看下...
2518 0
WPF 设置控件阴影后,引发的Y轴位置变化问题
原文:WPF 设置控件阴影后,引发的Y轴位置变化问题 背景 最近遇到一个动画执行时,文本位置变化的问题。如下图: 如果你仔细看的话,当星星变小时,文本往下降了几个像素。 貌似有点莫名其妙,因为控件之间并不在同一个Panel布局控件中,不存在高度限制变化引发此类问题。
1074 0
WPF 中使用附加属性,将任意 UI 元素或控件裁剪成圆形(椭圆)
原文:WPF 中使用附加属性,将任意 UI 元素或控件裁剪成圆形(椭圆) 版权声明:本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。欢迎转载、使用、重新发布,但务必保留文章署名吕毅(包含链接:http://blog.csdn.net/wpwalter/),不得用于商业目的,基于本文修改后的作品务必以相同的许可发布。
1278 0
WPF获取相对位置、坐标的方法
原文:WPF获取相对位置、坐标的方法 1.获取鼠标在控件中的坐标: 1 private void item_MouseDown(object sender, MouseButtonEventArgs e) 2 { 3 Point point = e.
2184 0
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等