Private Declare Function SetWindowPos Lib "user32" (ByVal hwnd As Long, ByVal hWndInsertAfter As Long, ByVal x As Long, ByVal y As Long, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long
Private Const SWP_NOZORDER = &H4
Private Const SWP_NOSIZE = &H1Private Sub Form_Load()
Dim x As Integer,y as interger
x=中心点x坐标-窗体宽度/2 '注意必需是屏幕坐标
y=中心点y坐标-窗体高度/2 '屏幕坐标
a = SetWindowPos(Me.hwnd, MDIForm1.hwnd,x , y , 500, 500, SWP_NOZORDER Or SWP_NOSIZE)
End Sub
Private Const SWP_NOZORDER = &H4
Private Const SWP_NOSIZE = &H1Private Sub Form_Load()
Dim x As Integer,y as interger
x=中心点x坐标-窗体宽度/2 '注意必需是屏幕坐标
y=中心点y坐标-窗体高度/2 '屏幕坐标
a = SetWindowPos(Me.hwnd, MDIForm1.hwnd,x , y , 500, 500, SWP_NOZORDER Or SWP_NOSIZE)
End Sub
解决方案 »
- 非常怪的scalemode的问题求教.
- 怎么样才能把第1个数和最后一个交换
- 请问 数据库有密码 data控件怎么用?
- 如何用datagrid来添加删除修改记录
- 请问:vb做成安装文件后,安装好,让这个程序能随着电脑的启动而启动,要在程序代码里实现,要怎么做啊?
- 我做个控件,自定一个pic_main 属性 为 picture ......可是一运行图片就没有了,,急急
- vb程序打包
- 请教一个问题!在线等!!
- 如何判斷產品A.產品B....在一個時間段被人使用過,在另一個時間段的使用情況?
- vb的数据报表(data report)如何支持分组报表分页打印
- 如何在MSFORM窗体中使得打开的窗体只有一个?
- 关于MsHFlexGrid与Excel、Oracle之间传输效率问题?
可以啦,,赶快去试一试吧!呵呵!
frm.Top = (Screen.Height - frm.Height) / 2 - frm.Top
frm.Left = (Screen.Width - frm.Width) / 2 - frm.Left
很方便!:)
Private Sub LoadNewDoc()
Static lDocumentCount As Long
Dim frmD As frmDocument
lDocumentCount = lDocumentCount + 1
Set frmD = New frmDocument
frmD.Caption = "Document " & lDocumentCount
frmD.Move (Screen.Width - frmD.Width) / 2 - frmD.Left, (Screen.Height - frmD.Height) / 2 - frmD.Top
frmD.Show
End Sub
作 者: caile (采乐)
等 级:
信 誉 值: 100
所属论坛: Visual Basic
问题点数: 20
回复次数: 6
发表时间: 2002-9-6 15:41:31
怎样在MDI窗体中,让MDI子窗体居中显示.
回复人: dinggy(dinggy) ( ) 信誉:105 2002-9-6 15:56:23 得分:0
只能通过设置 top,left 来控制了。sub form_load()
...... me.left = (mainmdi.width - me.width )/2 me.top = (mainmdi.height-me.height)/2
......end sub
Top
回复人: bluecc(深蓝) ( ) 信誉:100 2002-9-6 15:59:18 得分:0
Form1.Left = (MDIForm1.Width - Form1.Width) / 2
Form1.Top = (MDIForm1.Height - Form1.Height) / 2
FORM为子窗体,在调用的时候设一下就行了.
Top
回复人: foxsmile(小飞) ( ) 信誉:100 2002-9-6 16:01:19 得分:0
在子窗体的属性里可以设置啊,在startUpPosition属性里(2-屏幕中心)
Top
回复人: caile(采乐) ( ) 信誉:100 2002-9-6 16:44:48 得分:0
"在子窗体的属性里可以设置啊,在startUpPosition属性里(2-屏幕中心)"
你到底懂吗?还在这里混.你自己试式.其他两位,这样做不行.子窗体显示的不是窗体的正中,是在窗体的下方.太靠下了.
谁还有其他方法.
Top
回复人: dsclub(▁▂▃▄▅▆▇█ 騩鹬) ( ) 信誉:86 2002-9-6 16:52:23 得分:20
Form1.Left = (MDIForm1.ScaleWidth - Form1.Width) / 2
Form1.Top = (MDIForm1.ScaleHeight - Form1.Height) / 2
Top
回复人: dsclub(▁▂▃▄▅▆▇█ 騩鹬) ( ) 信誉:86 2002-9-6 16:54:00 得分:0
ScaleWidth和Width的区别这回体现的淋漓尽致了吧
Top