使用CreateWindowEx创建的Window中的默认按钮

问题描述

| 我使用ѭ0创建了一个窗口,它使用以下代码充当向导对话框;
DWORD dwStyle = WS_DLGFRAME | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_OVERLAPPEDWINDOW;
m_hWnd = CreateWindowEx(WS_EX_APPWINDOW,_T(\"WIZARD\"),_T(\"SETUP\"),dwStyle,CW_USEDEFAULT,WIZARD_WIDTH,WIZARD_HEIGHT,NULL,g_hInstance,this);
WM_CREATE
处理程序中,我创建底部的\'Next \',\'Back \'和\'Cancel \'按钮,在Next \'按钮上设置样式
BS_DEFPUSHBUTTON
,并将
DM_SETDEFID
发送给ID为的窗口下一个按钮。该按钮显示为类似于下一个按钮,但是在任何输入字段上按回车都不会执行任何操作(均未设置
ES_WANTRETURN
)。 我究竟做错了什么?如果我错过了任何重要的事情,我可以发布更多代码。 谢谢, Ĵ     

解决方法

        
DM_SETDEFID
消息通常由by7ѭ处理。如果您改为呼叫
DefWindowProc
,那么您需要自己处理该消息,以便当
IsDialogMessage
向窗口发送
DM_GETDEFID
消息时,您将知道如何响应。     

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...