| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2966 人关注过本帖
标题:MFC中的FindWindowEX问题
只看楼主 加入收藏
firebull1
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2009-11-19
结帖率:0
收藏
已结贴  问题点数:20 回复次数:2 
MFC中的FindWindowEX问题
HWND x=FindWindow(L"Shell_TrayWnd",NULL);
HWND xx=FindWindowEx(x,NULL,L"ReBarWindow32",NULL);
HWND xxx=FindWindowEx(xx,NULL,L"CiceroUIWndFrame",L"TF_FloatingLangBar_WndTitle");
ShowWindow(xxx,SW_HIDE);
这段在WIN32里可以的。。。
如果到了MFC中该变成什么样的。。
我写成下面这个样子。。
CWnd *x=::FindWindow(L"Shell_TrayWnd",NULL);
CWnd *xx=::FindWindowEx(x,NULL,L"ReBarWindow32",NULL);
CWnd *xxx=::FindWindowExW(xx,NULL,L"CiceroUIWndFrame",L"TF_FloatingLangBar_WndTitle");
xxx->ShowWindow(L"SW_HIDE");
他报错 是: 'FindWindowExW' : cannot convert parameter 1 from 'CWnd *' to 'HWND'
还有就是。。在findwindowEX前面加入个::和不加入有什么区别。。什么时候改加什么时候不加?
谢谢了。。
搜索更多相关主题的帖子: FindWindowEX MFC 
2009-11-19 18:25
hyfl
Rank: 7Rank: 7Rank: 7
来 自:火星
等 级:黑侠
帖 子:113
专家分:552
注 册:2008-11-20
收藏
得分:20 
win32里用的函数是SDK下的API,是最原始的函数,MFC是利用面向对象的技术对这些API进行了封装。
::代表的意思就是调用的全局函数,就是原始的API。否则的话就要用某个类的对象来调用成员函数了。
报错的原因是函数参数匹配的问题,看看MSDN里这些函数的原型,就明白问题所在了。

“一切高手都是从菜鸟炼成的!”1099285180@
2009-11-20 01:27
firebull1
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2009-11-19
收藏
得分:0 
CWND *x ;
x->GetSafeHwnd();做了之后是没报错了。。。不过就是没有效果出来。。。
2009-11-24 00:32
快速回复:MFC中的FindWindowEX问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.023668 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved