【问题标题】:How to use VisualStyleRenderer in Windows 7?如何在 Windows 7 中使用 VisualStyleRenderer?
【发布时间】:2010-03-06 22:54:45
【问题描述】:

在我的一个小项目中,我发现需要一个可折叠的组合框。

在网上搜索,我找到了一个here。在one of the comments 中,对使用VisualStyleRenderer 类以获取TreeView 打开和关闭字形的原始代码进行了改进。

运行代码正确地绘制加号和减号,就像 Windows XP 会绘制它一样,但是在 Windows Vista 和 Windows 7 中,打开和关闭节点的字形是小三角形。

为了获得正确的字形,我需要使用什么样的接口、类或 PInvoke?

【问题讨论】:

    标签: windows-7 windows-vista user-interface


    【解决方案1】:

    默认情况下,TreeView 的外观与 Windows 7 和 Vista 中的 XP 相同。要获得小箭头字形,您需要为控件设置窗口主题:

    SetWindowTheme(hwnd, L"explorer", NULL)
    

    这也可以用于 ListViews。

    我不确定可折叠组框如何呈现折叠/展开按钮,所以我不确定如何让它使用 Explorer 主题来绘制它们。

    【讨论】:

      猜你喜欢
      • 2012-12-14
      • 1970-01-01
      • 1970-01-01
      • 2013-02-26
      • 2022-01-19
      • 2017-02-18
      • 2012-09-20
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多