我现在写的是一个对话框程序
调用对话框的函数是 :DialogBoxParam()我的使用是
DialogBoxParam(NULL,MAKEINTRESOURCE(IDD_DIALOG1),NULL,(DLGPROC)DlgProc,0);
但这样的话有很多东西用不了,例如:COMBO BOX的 date选项 添加数据不能显示因为第一个参数我设置的是NULL,请问怎么在这里获取主程序的句柄啊?我是将此函数加在
BOOL CdataApp::InitInstance()
{}
里的。
调用对话框的函数是 :DialogBoxParam()我的使用是
DialogBoxParam(NULL,MAKEINTRESOURCE(IDD_DIALOG1),NULL,(DLGPROC)DlgProc,0);
但这样的话有很多东西用不了,例如:COMBO BOX的 date选项 添加数据不能显示因为第一个参数我设置的是NULL,请问怎么在这里获取主程序的句柄啊?我是将此函数加在
BOOL CdataApp::InitInstance()
{}
里的。
或者在对话框中使用FindWindow EnumWindow等等API来获取句柄
{}
你在这里面写你的对话框程序干什么呢?
你是写在主对话框创建之前还是之后呢?如果是之前,主对话框还没有呢,如果是之后,对不起,此时住对话框已经over了。
你没明白我的意思
我只是在这里写了个显示对话框 :DialogBoxParam(NULL,MAKEINTRESOURCE(IDD_DIALOG1),NULL,(DLGPROC)DlgProc,0);
吧函数第一个参数“null”改成全局的实例“hInst”就OK 。第一个参数不是句柄。
因为第一个参数我设置的是NULL,请问怎么在这里获取主程序的句柄啊?
所以我不需要明白你的意思,只是告诉你,你在OnInitInstance中是无法实现你的目标的,你明白我的意思吗?
获得主窗口:AfxGetApp()->GetMainWnd()或者AfxGetMainWnd()