我把不使用MFC,直接通过编程制作对话框叫做手工制作对话框。
现在我正在完成这样的工作。举个例子。
在我建立了一个窗口后,使用INSERT菜单插入了一个MENU选项和一个对话框。在这个对话框中自动有OK和不OK两个BUTTON,其ID分别为IDOK和IDCANCEL。然后我对这个对话框进行编程。LRESULT CALLBACK Dialog1(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
{
switch(message)
{
case WM_INIT:
return TRUE;
case WM_COMMAND:
{
if(LOWORD(lParam) == IDOK || LOWORD(lParam) == IDCANCEL)
EnDialog(......);
}
}
reutrn FALSE;
}菜单通过对这个程序的调用,可以正常地执行功能,即按下OK 或CANCEL后,关闭对话框。
但是,如果我新建一个对话框,并用资源在其中插入一个BUTTON,其ID为ID_BUTTON1,这时我用下列程序:LRESULT CALLBACK Dialog1(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
{
switch(message)
{
case WM_INIT:
return TRUE;
case WM_COMMAND:
{
if(LOWORD(lParam) == ID_BUTTON1)
EnDialog(......);
}
}
reutrn FALSE;
}
却发现,对话框被激活后,我INSERT的BUTTON无法被按下,可是我明明是有对按钮进行处理的,按理说这个BUTTON同OK与CANCEL同属一类资源,应当可以同样操作,可是为什么这里却有问题呢?我是个菜鸟,相信这个问题并不高明,请高手指教。
现在我正在完成这样的工作。举个例子。
在我建立了一个窗口后,使用INSERT菜单插入了一个MENU选项和一个对话框。在这个对话框中自动有OK和不OK两个BUTTON,其ID分别为IDOK和IDCANCEL。然后我对这个对话框进行编程。LRESULT CALLBACK Dialog1(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
{
switch(message)
{
case WM_INIT:
return TRUE;
case WM_COMMAND:
{
if(LOWORD(lParam) == IDOK || LOWORD(lParam) == IDCANCEL)
EnDialog(......);
}
}
reutrn FALSE;
}菜单通过对这个程序的调用,可以正常地执行功能,即按下OK 或CANCEL后,关闭对话框。
但是,如果我新建一个对话框,并用资源在其中插入一个BUTTON,其ID为ID_BUTTON1,这时我用下列程序:LRESULT CALLBACK Dialog1(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
{
switch(message)
{
case WM_INIT:
return TRUE;
case WM_COMMAND:
{
if(LOWORD(lParam) == ID_BUTTON1)
EnDialog(......);
}
}
reutrn FALSE;
}
却发现,对话框被激活后,我INSERT的BUTTON无法被按下,可是我明明是有对按钮进行处理的,按理说这个BUTTON同OK与CANCEL同属一类资源,应当可以同样操作,可是为什么这里却有问题呢?我是个菜鸟,相信这个问题并不高明,请高手指教。
解决方案 »
- 给100分,在线等
- 散分.另:应届生,找工作(附个人说明).再发布一个游戏平台(功能上类似QQ游戏)
- 有接手他人模块的哥们进来指导一下 - 虚心请教-谢谢,工作3,4年的欢迎指导
- LoadImage指定位图对象大小问题.
- 我用ATL Server写的WebService部署到非开发服务器上不能用,不知为什么?
- 关于简单的串口通讯
- 走过路过,不要错过得分的机会啊!
- 数据库编程问题(ADO)
- 请问供浏览器运行的嵌入在HTML文件中的ActivX控件是COM吗?
- 求教 MFC 设置网络连接
- 求赐教:可以让MDI的主窗口和文档窗口共享同一个IDR_MAINFRAME资源吗?
- ●●关于消息循环,对你们来说可能很简单,但它困惑我很久了。请进来看看吧●●
为什么我要用DestroyWindow(hWnd);才可以关掉?而且关掉后要打开这个对话框必须要点击两次?
"并用资源在其中插入一个BUTTON"这句是什么意思?