社区
界面
帖子详情
如何得到一个对话框上所有控件的ID?
Zhang_ZP
2008-06-26 04:00:36
我的方法是
CWnd* cWnd = GetWindow(GW_CHILD);
while(cWnd)
{
int nID = cWnd->GetDlgCtrlID();
cWnd = GetWindow(GW_HWNDNEXT);
}
可这样会得到ID为0的子窗口。
...全文
237
15
打赏
收藏
如何得到一个对话框上所有控件的ID?
我的方法是 CWnd* cWnd = GetWindow(GW_CHILD); while(cWnd) { int nID = cWnd->GetDlgCtrlID(); cWnd = GetWindow(GW_HWNDNEXT); } 可这样会得到ID为0的子窗口。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
15 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
Amuro1987218
2008-06-27
打赏
举报
回复
汗!
Zhang_ZP
2008-06-27
打赏
举报
回复
没什么问题。我等会就结贴了,不过难得发个帖。自己顶下。
Amuro1987218
2008-06-27
打赏
举报
回复
11的方法还有什么问题?
Zhang_ZP
2008-06-27
打赏
举报
回复
防沉顶帖。顶,顶,顶,顶,顶。
Amuro1987218
2008-06-26
打赏
举报
回复
除了人眼看,控件和普通子窗口有什么区别?
或者LZ或者GetClassName然后处理一下
Zhang_ZP
2008-06-26
打赏
举报
回复
想了想,这和我用的方法不是换汤不换药么?
Zhang_ZP
2008-06-26
打赏
举报
回复
但不是所有的子窗口都是控件吧?
Zhang_ZP
2008-06-26
打赏
举报
回复
说的对啊。这事我早就干过。现在居然没想到。试试。
春天到了冬天还远吗
2008-06-26
打赏
举报
回复
[Quote=引用 1 楼 Amuro1987218 的回复:]
BOOL EnumChildWindows( HWND hWndParent,
WNDENUMPROC lpEnumFunc,
LPARAM lParam
);
镁举子窗口.
[/Quote]
Amuro1987218
2008-06-26
打赏
举报
回复
但注意你可以把this指针通过lParam传过去
Zhang_ZP
2008-06-26
打赏
举报
回复
一楼的方法必须将lpEnumFunc写为静态和全局的函数。而这种函数里不能对类的数据进行操作。
vagrantisme
2008-06-26
打赏
举报
回复
static UINT nCtrlIds[] = {
IDC_EDT_WORKERS,
IDC_EDT_UDPIP,
IDC_EDT_UDPPORT,
IDC_EDT_PORT_LISTEN,
IDC_EDT_PORT_CTRL,
IDC_RDI_NULL,
IDC_RDI_CRYPTO,
IDC_RDI_PALM,
IDC_EDT_KEEPALIVETIME,
IDC_EDT_KEEPALIVEINTERVAL,
IDC_CHK_DEBUG_INFO
};
CWnd *pWnd = 0;
for( int i=0; i<sizeof(nCtrlIds)/sizeof(nCtrlIds[0]); ++i ){
pWnd = GetDlgItem(nCtrlIds[i]);
if( pWnd ) pWnd->EnableWindow(bEnable);
}
这样是在事先知道,ID的情况下,用如下方法。
如果不知道ID的话,只能用二楼的方法了。
Zhang_ZP
2008-06-26
打赏
举报
回复
沉了么?wo ding!顶上去。
天鹅梦
2008-06-26
打赏
举报
回复
int nID = cWnd->GetDlgCtrlID(); 就没什么用啊
最笨的办法是直接用GetDlgItem(nID)一个一个去获得,nID就是你的资源号
Amuro1987218
2008-06-26
打赏
举报
回复
BOOL EnumChildWindows( HWND hWndParent,
WNDENUMPROC lpEnumFunc,
LPARAM lParam
);
镁举子窗口.
遍历
对话框
控件
通过GetTopWindow,GetNextWindow遍历
对话框
控件
,获得
控件
ID
,可用于
控件
位置调整等需求
C++
对话框
和
控件
C++
对话框
和
控件
,针对很多东西进行了解析,相当好的东西,值得参考!希望对你有用!
MFC中子
对话框
的大小跟随主
对话框
大小进行缩放
包含
一个
主
对话框
和两个子
对话框
(在Tab
控件
中显示)。常用的MFC
控件
(包括字体、BMP
控件
)都可以进行缩放,子
对话框
的
控件
也可跟随主
对话框
大小缩放。单个
对话框
也适用。界面的
控件
ID
循环查找存入数组中(这样界面...
InstallShield自定义
对话框
使用IP
控件
InstallShield 打包时 使用IP
控件
动态创建
对话框
和
控件
不需要资源
ID
,就可以动态创建
对话框
和
控件
的示例代码
界面
15,979
社区成员
115,896
社区内容
发帖
与我相关
我的任务
界面
VC/MFC 界面
复制链接
扫一扫
分享
社区描述
VC/MFC 界面
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章