【问题标题】:Is it possible to get height of window's title bar?是否可以获得窗口标题栏的高度?
【发布时间】:2019-08-30 18:55:50
【问题描述】:

我正在编写一些关于捕获鼠标位置的代码。我有一个使用 wxWidgets 创建的框架,我正在解决一个需要获取标题栏高度的问题。有没有获取标题栏大小的好方法?

这是我需要的简单说明:

【问题讨论】:

标签: c++ wxwidgets


【解决方案1】:

wxWidgets 为此提供了一种机制(除此之外还有很多其他),称为wxSystemSettings::GetMetric。

static int wxSystemSettings::GetMetric(wxSystemMetric index, wxWindow* win = NULL);

您可以通过将win 保留为NULL 来检索“全局”值,或者您可以在特定窗口中传递。

https://docs.wxwidgets.org/trunk/classwx_system_settings.html#aa18e3b5794dc4193c4b0668d28d4933a

您可能想要的指标是wxSYS_CAPTION_Y。

https://docs.wxwidgets.org/trunk/settings_8h.html#a0f2b19d7a3717cdbef5a04cb05ab8f26

【讨论】:

  • wxSYS_CAPTION_Y 是我正在寻找的东西。感谢您提供出色的记录回复。
【解决方案2】:

它应该是wxWindow::GetClientAreaOrigin() 返回的y 坐标。

【讨论】:

  • x 和 y 的 wxWindow::GetClientAreaOrigin() 值都返回零,然后我无法得到正确的结果。
猜你喜欢
  • 1970-01-01
  • 2011-05-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-12-05
  • 2011-01-25
  • 2015-04-15
  • 2011-04-23
相关资源
最近更新 更多