首页 新闻 搜索 专区 学院

窗体开始位置设置

0
悬赏园豆:10 [已解决问题] 解决于 2009-08-26 15:44

我想让窗体一开始就出现在,屏幕的中间上方,但是我把窗体的startPosition设置为manual,在localtion属性里,输入应有的X和Y值,但是运行后,该窗体不在屏幕上出现,只是在状态栏里出现,点击它也没反应,就是不显示出来。 为什么?

EEcho的主页 EEcho | 初学一级 | 园豆:3
提问于:2009-08-26 10:52
< >
分享
最佳答案
0

我的做法就是在 Form 的构造函数中加入

            this.Top = (System.Windows.Forms.Screen.GetBounds(this).Height - this.Height) / 2;
            this.Left = (System.Windows.Forms.Screen.GetBounds(this).Width - this.Width) / 2;
就让窗体居中显示了。

收获园豆:10
eaglet | 专家六级 |园豆:17119 | 2009-08-26 10:58
那startPosition要设为哪个呢?
EEcho | 园豆:3 (初学一级) | 2009-08-26 11:11
为什么当我把startPositon设为manual后,不论this.Top和this.Left设为什么值,窗体都是不显示出来,怎么点击都不出来
EEcho | 园豆:3 (初学一级) | 2009-08-26 11:23
this.StartPosition = FormStartPosition.Manual; this.Location = new Point((System.Windows.Forms.Screen.GetBounds(this).Height - this.Height) / 2, (System.Windows.Forms.Screen.GetBounds(this).Width - this.Width) / 2); 上面代码我测了没问题。我怀疑是你的X,Y 值设置有误造成的,显示到屏幕外面去了。
eaglet | 园豆:17119 (专家六级) | 2009-08-26 12:01
我试了一下设置 StartPosition 为 manual ,显示没有问题。我估计是你设置的 X,Y值不对,导致窗体显示到屏幕外面去了。
eaglet | 园豆:17119 (专家六级) | 2009-08-26 14:51
@eaglet:是的,我把XY值换了一下,可以了,多谢了,您又帮我解决了一个问题
EEcho | 园豆:3 (初学一级) | 2009-08-26 15:44
其他回答(1)
0

把startPositon设置成centerScreen看看是不是窗体的问题。

自定义位置本机显示无误。winXPsp2+vs2008.

爱伦狼 | 园豆:227 (菜鸟二级) | 2009-08-26 11:49
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册