【问题标题】:Get system menu width in pixels using winapi使用winapi获取系统菜单宽度(以像素为单位)
【发布时间】:2011-11-18 03:59:53
【问题描述】:

我需要使用基本的 WINAPI 在 C 中获取窗口/系统菜单(最小化、最大化和关闭)的总宽度(以像素为单位)。我遇到了WM_GETTITLEBARINFOEX 消息,这对我有好处,但不幸的是,从 Vista 开始就支持它,而且我的应用程序还必须支持 XP 和 2003。谁能告诉我如何才能使这项工作?欢迎提出任何建议。

提前致谢!

【问题讨论】:

  • WM_GETTITLEBARINFOEX 没有给出系统菜单的宽度,它给出了标题栏中某些元素的大小和位置。这真的是你所追求的吗?系统菜单(现在通常称为窗口菜单)是单击窗口图标(通常位于标题左侧)时出现的下拉菜单。
  • 是的,也许我没有得到正确的术语,但我需要标题栏中按钮的大小。

标签: windows winapi size titlebar systemmenu


【解决方案1】:

您说的是系统菜单,但正如 Adrian 所提到的,WM_GETTITLEBARINFOEX 检索有关标题栏按钮的信息。 如果那是您真正想要的,您可能可以在任何

SM_CXSIZE = 窗口标题或标题栏中按钮的宽度,以像素为单位。

【讨论】:

  • 太好了,我试试看。我可能只需要乘以按钮的数量。
猜你喜欢
  • 2013-06-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-07-02
  • 2018-11-27
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多