我想知道是否有人可以帮我解决这个问题,因为我一直在环顾谷歌,很有可能我找到了它,但我不明白该怎么做。基本上这是我想要执行的例程。我有按钮' a'和按钮'如果按钮' a'按下然后打开一个消息框。如果按钮''按下然后打开一个新窗口并显示该窗口的内容。
很抱歉这么模糊,基本上,我的应用程序上有2个按钮。 1被标记为' a'和另一个' b。如何告诉我的应用程序运行某种循环来检查这些按钮是否被按下?如果单击第一个按钮,则打开一个消息框,如果第二个按钮则打开另一个窗口类。然后,我将如何向在同一应用程序中打开的窗口类添加新属性?
我在考虑在switch语句中采用WM_COMMAND
方法,但是CASES的id是什么以及它们如何与每个按钮对应? - 我在这里得到的任何帮助都非常感谢,代码示例将更加受到赞赏!
干杯
答案 0 :(得分:1)
在Win32中,每个按钮都有一个数字ID。为所有按钮提供不同的ID是一个好习惯。您有责任选择值并将这些数字分配给按钮。
根据环境:纯Win32,MFC等,定义值和分配值的细节将有所不同。您可以在创建窗口时指定id:
HWND WINAPI CreateWindow
(
_In_opt_ LPCTSTR lpClassName,
_In_opt_ LPCTSTR lpWindowName,
_In_ DWORD dwStyle,
_In_ int x,
_In_ int y,
_In_ int nWidth,
_In_ int nHeight,
_In_opt_ HWND hWndParent,
_In_opt_ HMENU hMenu,
_In_opt_ HINSTANCE hInstance,
_In_opt_ LPVOID lpParam
);
id在hMenu参数中传递。在http://msdn.microsoft.com/en-us/library/windows/desktop/ms632679(v=vs.85).aspx中查找详细信息。在Windows窗口中,id不能有菜单。听起来很有趣,但这就是80年代中期他们实现这一点的方式。
分配了ID后,您可以并且应该在WM_COMMAND
处理程序中使用它们。