Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/16.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/image-processing/2.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
Windows 使用winapi获取以像素为单位的系统菜单宽度_Windows_Winapi_Size_Titlebar_Systemmenu - Fatal编程技术网

Windows 使用winapi获取以像素为单位的系统菜单宽度

Windows 使用winapi获取以像素为单位的系统菜单宽度,windows,winapi,size,titlebar,systemmenu,Windows,Winapi,Size,Titlebar,Systemmenu,我需要使用基本WINAPI获得C中窗口/系统菜单(最小化、最大化和关闭)的总宽度(以像素为单位)。我看到了这条消息,这对我很好,但不幸的是,从Vista开始就支持它,我的应用程序也必须支持XP和2003。有人能告诉我怎样才能做到这一点吗?欢迎提出任何建议 提前谢谢 您说的是系统菜单,但正如Adrian提到的,WM_GETTITLEBARINFOEX检索有关标题栏按钮的信息。 如果这是您真正想要的,您可能可以在任何

我需要使用基本WINAPI获得C中窗口/系统菜单(最小化、最大化和关闭)的总宽度(以像素为单位)。我看到了这条消息,这对我很好,但不幸的是,从Vista开始就支持它,我的应用程序也必须支持XP和2003。有人能告诉我怎样才能做到这一点吗?欢迎提出任何建议


提前谢谢

您说的是系统菜单,但正如Adrian提到的,WM_GETTITLEBARINFOEX检索有关标题栏按钮的信息。 如果这是您真正想要的,您可能可以在任何 SM_CXSIZE=窗口标题或标题栏中按钮的宽度,以像素为单位


WM_GETTITLEBARINFOEX没有给出系统菜单的宽度,它给出了标题栏中某些元素的大小和位置。这真的是你想要的吗?系统菜单(现在通常称为窗口菜单)是单击窗口图标(通常位于标题左侧)时获得的下拉菜单。是的,可能我没有正确理解术语,但我需要标题栏中按钮的大小。太好了,我将尝试一下。我可能只需要乘以按钮的数量。