Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/42.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
winapi-如何从资源文件获取控件RECT结构_Winapi - Fatal编程技术网

winapi-如何从资源文件获取控件RECT结构

winapi-如何从资源文件获取控件RECT结构,winapi,Winapi,我使用CreateDialog函数创建了一个对话框窗口,其中包含一些基于资源文件的控件。这样我就可以得到一个控制手柄: HWND ctrlHwnd = GetDlgItem(dlgHwnd, IDC_LIST); 并使用诸如GetClientRect等函数获取控件维度。假设使用SetWindowPos我更改了控件维度。有没有办法从资源文件中获取初始维度?我知道我可以在程序内存中保存初始RECT数据,但我想知道是否还有其他方法?您可以像读取任何其他资源一样读取资源。这是结构的二进制表示。其cx和

我使用CreateDialog函数创建了一个对话框窗口,其中包含一些基于资源文件的控件。这样我就可以得到一个控制手柄:

HWND ctrlHwnd = GetDlgItem(dlgHwnd, IDC_LIST);
并使用诸如GetClientRect等函数获取控件维度。假设使用SetWindowPos我更改了控件维度。有没有办法从资源文件中获取初始维度?我知道我可以在程序内存中保存初始RECT数据,但我想知道是否还有其他方法?

您可以像读取任何其他资源一样读取资源。这是结构的二进制表示。其
cx
cy
字段分别保存DLU中的宽度和高度。您可以使用将这些转换为屏幕像素值。同样,对于
DLGTEMPLATEEX
结构后面的各个结构。对话框资源中定义的每个控件都有一个。
id
字段保存控件标识符(如示例中的
IDC\u列表
)。通过