如何正确调用Create或者CreateEx函数生成CWnd类派生类的具有WS_POPUP属性的窗口
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何正确调用Create或者CreateEx函数生成CWnd类派生类的具有WS_POPUP属性的窗口相关的知识,希望对你有一定的参考价值。
如何正确调用Create或者CreateEx函数生成CWnd类派生类的具有WS_POPUP属性的窗口
或者说 如何自己编写类似CDialog的CWnd的派生类 但是不需要对话框资源就可以生成窗口对象???
万分感谢!!
谢谢回答
但是请问如何从CWnd类派生新类然后生成具有WS_POPUP属性的窗口呢?我用了CreateEx总是不成功的,我想实现类似CDialog的DoModal功能
魔高丈 给出的例子使用的是windows api函数 CreateWindowEx 我应该怎么应用到派生类中呢?
Create的参数很简单啊,你注意不同的控件,有不同的字符串标示,比如:_T("EDIT") _T("LISTBOX")等,剩下的参数是窗口位置、样式、父窗口、ID,这些都好赋值。
你看 VS自带的 winctrl1.cpp/winctrl2.cpp/...等几个文件,里面有常用控件的实现方法。
eg。你想生成一个listbox
CListBox* list1 = new CListBox;
list1->Create(WS_CHILD,rect, this, nID);
如果直接不包含CListBox的头文件,就:
CWnd*mylistbox1 = new CWnd;
mylistbox1->Create(_T("LISTBOX"), _T("列表控件"),...);
试试 参考技术B 你参考一下这里的代码吧:
http://www.vckbase.com/document/viewdoc/?id=269
里面的颜色选择对话框就是用CreateEx动态创建的,且没有用到资源!本回答被提问者采纳
以上是关于如何正确调用Create或者CreateEx函数生成CWnd类派生类的具有WS_POPUP属性的窗口的主要内容,如果未能解决你的问题,请参考以下文章