动态创建CComboBox控件的问题
写了下面这个测试函数,想动态的在一个对话框上创建CComboBox控件,可是运行之后控件没有显示出来, 请高手指教,哪里有问题。
创建控件的函数
程序代码:
BOOL CTestCtrlMsgDlg::AddCtrl(UINT mCtrlID, CRect rect) { CComboBox mCtrlCombox; BOOL RST = mCtrlCombox.CreateEx( NULL,_T("ComboBox"), NULL, WS_CHILD|WS_VISIBLE|WS_VSCROLL|CBS_DROPDOWNLIST|WS_TABSTOP, rect,this, mCtrlID ); if( RST ) { mCtrlCombox.AddString( _T("Item 1") ); mCtrlCombox.AddString( _T("Item 2") ); mCtrlCombox.AddString( _T("Item 3") ); mCtrlCombox.AddString( _T("Item 4") ); } mCtrlCombox.ShowWindow(SW_SHOW); return RST; }
我是在DLG工程的自带OnInitDialog函数中调用的,调用部分如下:
程序代码:
CRect rect; rect.left = 5; rect.right = 200; rect.top= 5; rect.bottom = 300; BOOL rst = AddCtrl( 20001, rect );
先行谢过,另:我想给这个动态创建的下拉控件添加一个对CBN_SELCHANGE消息的响应,不知道该怎么添加。
[ 本帖最后由 zjhnuaa 于 2009-11-4 19:39 编辑 ]