检测是否采取了事件- win32

Detect if event is taken - win32

本文关键字:事件 win32 是否 检测      更新时间:2023-10-16

我想知道是否有人可以帮助我,因为我一直在寻找谷歌和机会是我发现它,但只是不明白如何做到这一点。基本上这就是我想要表演的舞步。我有按钮'a'和按钮'b',如果按钮'a'被按下,然后打开一个消息框。如果按下按钮'b',则打开新窗口并显示该窗口的内容。

抱歉说得这么模糊,我的应用程序上有两个按钮。1标为"a",另一个标为"b"。如何让应用程序运行某种循环来检查这些按钮是否被按下?如果单击第一个按钮,则打开一个消息框,如果单击第二个按钮,则打开另一个窗口类。然后,我将如何添加新的属性,在同一应用程序中打开的窗口类?

我正在考虑在switch语句中采用WM_COMMAND方法,但是case的id是什么,它们如何对应于每个按钮?-任何帮助,我可以得到这个问题在这里非常感激,一个代码示例将更加感激!

欢呼

在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。在带有id的Windows窗口中不能有菜单。听起来很有趣,但这是他们在80年代中期实现的。

一旦您分配了id,您可以并且应该在WM_COMMAND处理程序中使用它们。