在使用C ++编程时,我应该如何在win32中创build一个子窗口?

我是新来的C + +以及Windows编程..

我创build了一个使用msdn CreateWindow()函数的窗口

这工作正常..现在我想创build一个子窗口…父窗口应该控制子窗口…

任何有关这个帮助示例代码。

提前致谢

粗略地说,在你想要创建子对象的父类的处理程序中,调用CreateWindow ,将父类的窗口作为hwndParent传递 – 可能还需要在子类上设置某些样式,例如WS_CHILD 。 您与子窗口的交互取决于您创建的窗口的类型。 有些窗口(比如按钮)被设计为作为子窗口工作,所以他们发送了很多通知消息,所以你可以设置你的父母来监听这些通知消息。

如果你能获得副本,我强烈推荐你阅读Charles Petzold的 “Programming Windows”。

否则,要回答你的问题,当你创建子窗口(使用CreateWindow或CreateWindowEx )时,将父窗口的句柄作为父窗口传递:

 HWND CreateWindowEx ( DWORD dwExStyle, LPCTSTR lpClassName, LPCTSTR lpWindowName, DWORD dwStyle, int x, int y, int nWidth, int nHeight, HWND hWndParent, /// pass the parent window handle here HMENU hMenu, HINSTANCE hInstance, LPVOID lpParam ); 

如1800 Info也说过,也许还设置了WS_CHILD风格(这里更多的是Window Style )。 这只是基本的管道,真的..

当你说“控制孩子窗口…”时,你可以更具体些吗?