关于父子窗口的问题

zy1306 2005-08-31 03:47:14
最近遇到了这样一个问题:我用SetParent函数将窗口A设为B的父窗口后,再用GetParent查找B的父窗口,得到的结果却为0。我要是用GetParent查找一个Msgbox函数弹出窗口的父窗口又能得到正确结果,请各位大虾帮忙找找是什么原因会出现此错误,还有能不能有其他方法能将两个窗口设为父子关系。
...全文
87 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
GHOSTSEA 2005-08-31
  • 打赏
  • 举报
回复
不用MDI窗体的话各窗体之间是并列的,没有父子关系~~~~~~~~~~
zy1306 2005-08-31
  • 打赏
  • 举报
回复
TO:yinweihong(真名:尹伟红)
我是这样写的
Private Declare Function GetParent Lib "user32" Alias "GetParent" (ByVal hwnd As Long) As Long
Private Declare Function GetForegroundWindow Lib "user32" Alias "GetForegroundWindow" () As Long
dim fh as long
dim ph as long
private sub timer1_timer()
fh=GetForegroundWindow
ph=GetParent(fh)
text1.text=ph
end sub

yinweihong 2005-08-31
  • 打赏
  • 举报
回复
GetParent(Findwindowex(Findwindow(a,0&),b,0,0))
zy1306 2005-08-31
  • 打赏
  • 举报
回复
可不可以不用MDI窗体?
我试过,要是用的话,用GetForegroundWindow就没法检测MDI子窗体了
yinweihong 2005-08-31
  • 打赏
  • 举报
回复
你GetParent传入的是什么参数呢?看看是不是是你参数错了,然后GetParent失败
你可以先用FindWindowEx找看看从A中找不找得到B的句柄,不就完成你这个要求了?
zy1306 2005-08-31
  • 打赏
  • 举报
回复
VB内部的窗体
conrad_wan 2005-08-31
  • 打赏
  • 举报
回复
弄成MDI吧
射天狼 2005-08-31
  • 打赏
  • 举报
回复
你是要控制外部的程序的窗口关系还是VB内部的窗口!?
bbhere 2005-08-31
  • 打赏
  • 举报
回复
刚学vb,不会,帮顶

1,486

社区成员

发帖
与我相关
我的任务
社区描述
VB API
社区管理员
  • API
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧