vb 中两个窗体对齐的苦恼

来源:百度知道 编辑:UC知道 时间:2024/05/28 17:12:23
我现在在写一个VB程序(俺是新手),有两个窗体,其中一个是关于作者的窗体.我现在想让关于作者的这个窗体根据另一个窗体对齐(主窗体).不管主窗体移动到哪里它都能和它对齐.我要实现这个功能我要具体怎么做?要哪些代码可以实现?

很简单的

假定你的主窗体为form1,关于窗口是form2

form1中添加代码如下:

Private Sub Form_Activate()
Form2.Timer1.Interval = 1
End Sub

Private Sub Form_Deactivate()
Form2.Timer1.Interval = 0
End Sub

form2中放一个timer控件,添加代码:

Private Sub Timer1_Timer()
Me.Move Form1.Left + Form1.Width, Form1.Top
End Sub

当你想拖动form2时,可以自由拖动,如果拖动form1,form2会跟着form1走

假设主窗体为FORM1
me.top=FORM1.topme
me.left=form1.left+form1.wide+40

不知道你说的哪种对齐方式,假设是左对齐,只要在paint事件里添加如下代码就可以了
Private Sub Form_Paint()
FrmAuthor.Show
FrmAuthor.Left = Me.Left
FrmAuthor.Top = Me.Top + 500
End Sub

不用写代码,将主窗体建成MDI窗体,把那个关于作者的窗体建成普通窗体,把它的MDIChild属性改为true,一般默认的都是false;选择它的BorderStyle属性值为3,这样不管怎么样都会和主窗体对齐的。