首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >C++ WINAPI -无边界绘制ListView

C++ WINAPI -无边界绘制ListView
EN

Stack Overflow用户
提问于 2014-03-10 20:24:09
回答 1查看 454关注 0票数 0

我有点小麻烦。

对于父窗口,我使用了维度920x570。对于ListView 900x500。

从这个维度来看,人们会说有相当多的边界,然而在现实中却不是这样。如果我使用完全相同的尺寸,我得到相当大一部分的ListView切断。好吧,我可以尝试找到给我提供“无边界”ListView的确切值,但即使这样做,Windows中的情况也略有不同(我们讨论的是5-10像素)。

是否有正确的方法将ListView“无边界”地绘制为在所有平台上工作?

他们说图片值几千字..。所以它开始了

图片

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-03-10 22:03:49

您必须区分窗口大小和客户端大小。如果父窗口是920x570,那么这些就是它的外部维度。客户区域更小,这就是您需要设置listview的维度,以使其适合整个区域。

看看GetClientRect函数。您需要将ListView的维度设置为使用这个Fun广子获得的维度。

编辑

您的代码可以如下所示

代码语言:javascript
运行
复制
HWND outerWnd = CreateWindowEx(...);
RECT clientRect;
GetClientRect(outerWnd, &clientRect);
HWND listView = CreateWindowEx(..., WC_LISTVIEW, "", WS_CHILD|..., 0, 0, clientRect.right, clientRect.bottom, outerWnd, NULL, hInstance, NULL);

对于GetClientRect,RECT结构的右成员和底部成员分别是窗口的宽度和高度。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22310548

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档