社区
API
帖子详情
如何得知窗口 hWnd 是不是MDI类型窗口
二师兄的老公
2003-10-16 10:10:47
先 hWnd = GetActiveWindow();
再判断 hWnd 是否为MDI类型窗口。
怎么做?
...全文
55
9
打赏
收藏
如何得知窗口 hWnd 是不是MDI类型窗口
先 hWnd = GetActiveWindow(); 再判断 hWnd 是否为MDI类型窗口。 怎么做?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
kmzs
2003-10-16
打赏
举报
回复
。。。
二师兄的老公
2003-10-16
打赏
举报
回复
可以采用EnumChildWindows函数遍历子窗口的方法。
不过前提必须是至少有一个子窗口开着!
问题解决!给分!
TechnoFantasy
2003-10-16
打赏
举报
回复
我想可能需要用EnumChildWindows函数遍历窗口的子窗口,看里面是否有Windows窗口类型的子窗口
TechnoFantasy
2003-10-16
打赏
举报
回复
MDI主窗口的风格跟普通的窗口是一致的,假设Form1是普通窗口,MDIForm1是MDI父窗口,你可以用下面的代码:
Dim l As Long
l = GetWindowLong(Form1.hwnd, GWL_STYLE)
Debug.Print Hex(l)
l = GetWindowLong(MDIForm1.hwnd, GWL_STYLE)
Debug.Print Hex(l)
l = GetWindowLong(Form1.hwnd, GWL_EXSTYLE)
Debug.Print Hex(l)
l = GetWindowLong(MDIForm1.hwnd, GWL_EXSTYLE)
Debug.Print Hex(l)
可以看到返回的风格是一样的。
二师兄的老公
2003-10-16
打赏
举报
回复
可能是我问题没说清楚。
TechnoFantasy(www.applevb.com) 的方法是检查窗口是否为MDI子窗口。
我要检查的是:窗口是否为MDI主窗口!
TechnoFantasy
2003-10-16
打赏
举报
回复
Option Explicit
Const WS_EX_MDICHILD = &H40
Const GWL_EXSTYLE = (-20)
Private Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" _
(ByVal hwnd As Long, ByVal nIndex As Long) As Long
Function IsWindowMid(hwnd As Long) As Boolean
Dim x As Long
x = GetWindowLong(hwnd, GWL_EXSTYLE)
If (x And WS_EX_MDICHILD) Then
IsWindowMid = True
Else
IsWindowMid = False
End If
End Function
rainstormmaster
2003-10-16
打赏
举报
回复
笔误,应为getwindowlong
rainstormmaster
2003-10-16
打赏
举报
回复
或者用setwindowlong试试
rainstormmaster
2003-10-16
打赏
举报
回复
试试:
Private Declare Function GetParent Lib "user32" (ByVal hwnd As Long) As Long
if GetParent(hwnd)=0 then
'no
else
'yes
end if
取自定义控件所在
MDI
子
窗口
句柄
vb6取自定义控件所在
MDI
子
窗口
句柄,Usercontrol,vb6,
Mdi
ChildForm_
Hwnd
VB 禁止调整
MDI
窗体大小.rar
VB 禁止调整
MDI
窗体大小,窗体文件一共是2个,一个是主
窗口
文件,一个是
MDI
窗口
文件,实现禁止改变
窗口
大小的功能,我们可以在
MDI
Form中当窗体加载时,,执行以下代码: Private Sub
MDI
Form_Load() Style = ...
RINGSDK包含界面库和图象库。
窗口
类型
:为IS_WINDOW,IS_
MDI
FRAME,IS_
MDI
CHILD,IS_DIALOG,IS_PROPPAGE,IS_PROPSHEET这几个值之一,一看名称就知道,不需要多讲了。 其实这个只是声明了
窗口
类是从哪个类继承。 初始化标记:为NEED_INIT和NO_...
Window 消息大全
WM_CHILDACTIVATE = $0022 //发送此消息给
MDI
子
窗口
当用户点击此
窗口
的标题栏,或当
窗口
被激活,移动,改变大小 WM_QUEUESYNC= $0023 //此消息由基于计算机的训练程序发送,通过WH_JOURNALPALYBACK的hook程序分离出...
window32 API大全 win32编程
如果此参数为
HWND
_BROADCAST,则消息将被发送到系统中所有顶层
窗口
,包括无效或不可见的非自身拥有的
窗口
、被覆盖的
窗口
和弹出式
窗口
,但消息不被发送到子
窗口
。 Msg:指定被发送的消息。 wParam:指定附加的消息...
API
1,486
社区成员
23,280
社区内容
发帖
与我相关
我的任务
API
VB API
复制链接
扫一扫
分享
社区描述
VB API
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章