winfrom 指定窗体出现的在屏幕的位置

来源:https://www.cnblogs.com/pingming/p/6765194.html
来源:https://blog.csdn.net/c914620529/article/details/47613915
首先必须把窗体的显示位置设置为手动。

dlg.StartPosition=FormStartPosition.Manual;

随后获取屏幕的分辨率,也就是显示器屏幕的大小。

int xWidth = SystemInformation.PrimaryMonitorSize.Width;//获取显示器屏幕宽度

int yHeight = SystemInformation.PrimaryMonitorSize.Height;//高度

然后定义窗口位置,以主窗体为例

mainForm.Location = new Point(xWidth/2, yHeight/2);//这里需要再减去窗体本身的宽度和高度的一半

mainForm.Show();

以上是链接原文

注意:敲黑板

如果让照上文这样写的话。窗口不会展现在屏幕中间
因为mainForm.Location = new Point(xWidth/2, yHeight/2); 的Location属性
是以窗口左上角作为起点。
故 我们要把窗体的 宽高各除以2。
然后
mainForm.Location = new Point(xWidth/2-窗口宽/2, yHeight/2-窗体高/2);
窗体宽高需要手动计算!

ps:
这是我自己的需求记录下
由于控件原因窗口 必须要最小化
在这里插入图片描述
但是登录后 主界面不会显示在屏幕上。
所以 我采用一种方法。
在窗体加载的时候 给一个文本框赋值(这个自己设置一个隐藏的文本框)
在Load事件中加上

           StartPosition = FormStartPosition.CenterScreen;
            textBox1.Select();//给文本控件光标
            WindowState = FormWindowState.Normal;

解决

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值