Tab 控件的客户区?

发布于 2024-10-30 06:50:29 字数 284 浏览 1 评论 0原文

如何获取选项卡控件的“内部”,即可以放置控件的区域?

// doesn't work:
WINDOWINFO tabsInfo;
GetWindowInfo(GetDlgItem(hwndDialog, IDC_TABS), &tabsInfo);
MoveWindow(someHwnd, tabsInfo.rcClient.left, tabsInfo.rcClient.top, ...

tabsInfo.rcClient 给出选项卡控件使用的整个区域,包括它自己的控件

How to get the "inside" of a tab control, i.e. the area in which you can place controls?

// doesn't work:
WINDOWINFO tabsInfo;
GetWindowInfo(GetDlgItem(hwndDialog, IDC_TABS), &tabsInfo);
MoveWindow(someHwnd, tabsInfo.rcClient.left, tabsInfo.rcClient.top, ...

tabsInfo.rcClient gives the entire region used by the tab control, including its own controls

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

只有影子陪我不离不弃 2024-11-06 06:50:29

您可以使用 TabCtrl_AdjustRect -- 通过在选项卡控件的边界矩形中以及输出时,该矩形将调整为内容区域。

另外,如果您只需要窗口的客户端矩形,则使用 <代码>GetClientRect而不是GetWindowInfo

You can use TabCtrl_AdjustRect -- pass in the bounding rectangle of the tab control and on output, the rectangle will be adjusted to the content area.

Also, if you only need the client rectangle of the window, it's simpler to use GetClientRect instead of GetWindowInfo.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文