Winapi 控制和#x27;s窗口句柄和控件ID

Winapi 控制和#x27;s窗口句柄和控件ID,winapi,x86,Winapi,X86,我正在学习Win32汇编。有一些问题我找不到合适的结果 任何人都可以为我解释控件的窗口句柄和控件ID之间的区别。它们没有任何共同之处。每个窗口都有一个句柄,由CreateWindowEx()返回。这样的窗口可以附加一些额外的属性,比如菜单句柄。CreateWindowEx()中的Hmeneu参数。如果窗口没有菜单,子窗口就没有菜单,那么可以使用该参数传递任意其他位的数据。它将被分配给GWLP_ID属性(请参阅GetWindowLongPtr)。还要注意GWLP_USERDATA,这是一个额外的属

我正在学习Win32汇编。有一些问题我找不到合适的结果


任何人都可以为我解释控件的窗口句柄和控件ID之间的区别。

它们没有任何共同之处。每个窗口都有一个句柄,由CreateWindowEx()返回。这样的窗口可以附加一些额外的属性,比如菜单句柄。CreateWindowEx()中的Hmeneu参数。如果窗口没有菜单,子窗口就没有菜单,那么可以使用该参数传递任意其他位的数据。它将被分配给GWLP_ID属性(请参阅GetWindowLongPtr)。还要注意GWLP_USERDATA,这是一个额外的属性,您可以根据自己的需要使用它


对话框利用了这一点,在资源编辑器中创建的对话框模板提供了对子控件进行编号的方法。使用诸如GetDlgItem()之类的帮助函数,以获取具有特定编号的控件的句柄。对话框是非常必要的,因为它是从对话框模板创建子控件的窗口,所以您自己不知道窗口句柄。

您尝试过用C或C++编写的Win32吗?