您好,欢迎来到[编程问答]网站首页   源码下载   电子书籍   软件下载   专题
当前位置:首页 >> 编程问答 >> VC/MFC >> 子窗口无法被激活

子窗口无法被激活

来源:网络整理     时间:2016/7/10 18:55:18     关键词:

关于网友提出的“ 子窗口无法被激活”问题疑问,本网通过在网上对“ 子窗口无法被激活”有关的相关答案进行了整理,供用户进行参考,详细问题解答如下:

问题: 子窗口无法被激活
描述:

如图,我直接用VC++的向导生成了一个hello world 的应用程序(非MFC
然后写了个什么都默认的window proc作为子窗口的proc:

LRESULT CALLBACK WndProcDoNothing(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{
switch(message)
{
case WM_NCACTIVATE:
OutputDebugString(TEXT("child_nc_activate\n"));
break;
}
return DefWindowProc(hWnd, message, wParam, lParam);
}

再把子窗口给创建出来:
   g_hwndChild = CreateWindow(TEXT("child_window"), TEXT(""), WS_CHILD|WS_VISIBLE|WS_OVERLAPPEDWINDOW|WS_CLIPSIBLINGS, 30, 30, 400, 300, hWnd, NULL, hInstance, NULL);

发现能改变大小,能拖动,但就是一直处于非激活状态,WM_NCACTIVATE消息一直收不到,用spy++看也是这样,请问如何激活它?
oh,我尝试过SetActiveWindow,没用的,无论怎么点都没用,能响应其它消息,但就是不能激活。
如图所示:
[img=http://album.hi.csdn.net/app_uploads/guogangj/20081204/172700014.p.png?d=20081204173325967][/img]
解决方案1:

把标题栏去掉。

解决方案2:

贴出完整代码,方便调试


以上介绍了“ 子窗口无法被激活”的问题解答,希望对有需要的网友有所帮助。
本文网址链接:http://www.codes51.com/itwd/2493842.html

相关图片

相关文章