vb 移动窗口

我想把form5移动到form3中picture1的位置,下面是我的代码(在form3的code中):Dimr2AsRECTGetWindowRectPicture1.h... 我想把form5移动到form3中picture1的位置,下面是我的代码(在form3的code中):

Dim r2 As RECT

GetWindowRect Picture1.hwnd, r2

Form5.ScaleMode = vbPixels '设置坐标单位为像素

Form5.Move r2.Left, r2.Top

Form5.Show

为什么移动的坐标仍然是默认的缇而不是屏幕像素呢?
请指教!
要实现窗口的正确移动,应该怎么做?
展开
 我来答
百度网友e9042513a
推荐于2017-09-10 · TA获得超过6985个赞
知道大有可为答主
回答量:2388
采纳率:0%
帮助的人:3516万
展开全部
将form5的左上角的位置挪到form3中picture1左上角的位置

'form3中
Private Type rect
Left As Long
Top As Long
Right As Long
Bottom As Long
End Type

Private Declare Function GetWindowRect Lib "user32" (ByVal hwnd As Long, lpRect As rect) As Long
Private Declare Function MoveWindow Lib "user32" (ByVal hwnd As Long, ByVal x As Long, ByVal y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal bRepaint As Long) As Long

Private Sub Command1_Click()
Dim wrect As rect
Dim picrect As rect

GetWindowRect Picture1.hwnd, picrect
GetWindowRect Form5.hwnd, wrect
MoveWindow Form5.hwnd, picrect.Left, picrect.Top, wrect.Right - wrect.Left, wrect.Bottom - wrect.Top, True
Form5.Show
End Sub
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友2ca1c0f24
2009-04-13 · TA获得超过2036个赞
知道大有可为答主
回答量:4364
采纳率:0%
帮助的人:3437万
展开全部
可能时我的水平低,但是我还没有听说过VB能够将一个窗体包含在另外一个窗体中,你上面的代码是打开了一个Form5窗体,而不是将Form5窗体包含在Form3窗体中,在一个窗体中包含多项内容,在VB中使用的控件比较多,例如框架(Frame)就是比较常用的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式