我有一个带有许多按钮的对话框。单击其中任何一个都将创建一个基于单个模板的“子”对话框(如果这是正确的术语...资源文件中的单个子对话框定义和 ID)。
例如,从父对话框的对话框过程中:
case WM_COMMAND:
switch (LOWORD(wparam)) {
case IDC_MAPBUT1:
case IDC_MAPBUT2:
case IDC_MAPBUT3:
case IDC_MAPBUT4:
case IDC_MAPBUT5:
case IDC_MAPBUT6:
case IDC_MAPBUT7:
case IDC_MAPBUT8:
case IDC_MAPBUT9:
case IDC_MAPBUT10:
DialogBox(
g_hinstance,
MAKEINTRESOURCE(IDD_DIALOG2),
hwnd,
CPUMapDlgProc);
return TRUE;
//etc
我需要知道单击了哪一个按钮(仍在子对话框中),因为我需要从相应的结构中读取数据。我怎样才能做到这一点?
最佳答案
将 LOWORD(wparam)
的值保存在 CPUMapDlgProc
可以查看的全局变量中,或者调用 DialogBoxParam
并将其作为WM_INITDIALOG
消息的参数。
关于c - 如何获取单击打开对话框的按钮的控件 ID?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27696374/