Tab 控件的客户区?
如何获取选项卡控件的“内部”,即可以放置控件的区域?
// 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 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您可以使用
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 ofGetWindowInfo
.