【问题标题】:Add drop shadow to ListView (Icon mode)?将阴影添加到 ListView(图标模式)?
【发布时间】:2015-01-27 22:42:56
【问题描述】:

如果您在 Windows 资源管理器中查看缩略图图像,您会注意到它们有一个阴影,这种效果是否与 ListView 控件相关,或者 Windows 资源管理器是否进行了一些额外的编码来实现这种效果?


编辑:

原来Windows使用了另一个控件。所以我现在的问题是如何向“普通”ListView 添加阴影。

【问题讨论】:

  • Explorer 不使用系统列表视图控件
  • 它是否使用了我们无权访问的控件?
  • 这太复杂了...你完全可以最终制作一个半透明位图并将其模糊以制作阴影...
  • @Mints97 它有多复杂,我的意思是我应该学习什么才能做到这一点。我有一个想法,就是在图像本身上绘制阴影,我已经尝试过了,效果很好,但是有一个问题:当我选择 ListView 项目时,阴影也显示为选中!那么有没有办法只让 ListView 项目的一部分被选中(没有阴影的部分)?

标签: c++ c winapi


【解决方案1】:

对于标准列表视图,您可能需要使用一种称为自定义绘制 (https://msdn.microsoft.com/en-us/library/windows/desktop/ff919569(v=vs.85).aspx) 的技术。

基本上,您要求列表视图不要绘制其项目,而是向您发送一些窗口消息让您自己绘制它们。这是一种非常灵活但也很麻烦的技术,因为你需要处理很多事情(比如一个项目是否被选中/禁用、字体、颜色等)

【讨论】:

    猜你喜欢
    • 2015-01-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-12-04
    • 1970-01-01
    相关资源
    最近更新 更多