Foxtable(狐表)用户栏目专家坐堂 → [求助]窗口居中


  共有1336人关注过本帖树形打印复制链接

主题:[求助]窗口居中

帅哥哟,离线,有人找我吗?
jyh7081
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:960 积分:8478 威望:0 精华:0 注册:2012/10/3 13:25:00
[求助]窗口居中  发帖心情 Post By:2017/7/30 16:10:00 [只看该作者]

在母窗口的panel中打开子窗口(子窗口尺寸较小,总是显示在左上角),怎样使打开的子窗口在panel上居中显示?

Dim PB As WinForm.Panel = e.Form.Controls("Panel4")
Dim Name As String = "窗口1"
Forms(Name).OPEN(-1000,-1500)
Forms(Name).BaseForm.TopLevel = False
Forms(Name).BaseForm.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None
Forms(Name).BaseForm.Dock = System.Windows.Forms.DockStyle.Fill
'PB.BaseControl.Controls.Clear
PB.BaseControl.Controls("panel5").visible = False   '增加此句
PB.BaseControl.Controls.add(Forms(Name).BaseForm)
Forms("从窗口1").open

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/7/30 16:16:00 [只看该作者]

你可以控制left、top属性的

 

Forms(Name).BaseForm.left = (pb.width-Forms(Name).BaseForm.width) / 2

Forms(Name).BaseForm.top = (pb.height-Forms(Name).BaseForm.height) / 2


 回到顶部
帅哥哟,离线,有人找我吗?
jyh7081
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:960 积分:8478 威望:0 精华:0 注册:2012/10/3 13:25:00
  发帖心情 Post By:2017/7/30 16:57:00 [只看该作者]


我把这句Forms(Name).BaseForm.TopLevel = False  注释掉,可以居中,但显示“无法将顶级控件添加到控件。” 代码也看不懂,百度也搜不到

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/7/30 17:24:00 [只看该作者]

我测试没问题

 

Dim PB As WinForm.Panel = e.Form.Controls("Panel1")
Dim Name As String = "窗口2"
Forms(Name).OPEN(-1000,-1500)
Forms(Name).BaseForm.TopLevel = False
Forms(Name).BaseForm.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None
PB.BaseControl.Controls.add(Forms(Name).BaseForm)
Forms(Name).BaseForm.left = (pb.width-Forms(Name).BaseForm.width) / 2
Forms(Name).BaseForm.top = (pb.height-Forms(Name).BaseForm.height) / 2


 回到顶部