获取Windows API TitleBar图标
问题描述:
我正在使用Qt框架处理大多数窗口绘图的项目。但是,我想在标题栏区域添加一些样式,所以最后我不得不拉入一些Windows API来执行此操作。我的目标是一个类似Chrome的标签系统,它位于标题栏区域。我已经有了我想要的行为(QWidget标签顶部,Win API处理一些其他窗口方面,如最小化,最大化,航空捕捉等)。获取Windows API TitleBar图标
但是,我想知道如何获得标准窗口按钮(最小化,最大化/还原,关闭)来显示。现在我通过位于正确位置并使用我提供的图标的QPushButton创建我自己的按钮,但我最好喜欢使用本机图标。
我的问题:有没有办法使用Windows API获取这些按钮的图标?我想象一下,必须有某种方式才能找回像HICON对象的图标,但我似乎无法找到任何东西。
答
对于主题控件(使用视觉样式的控件),您可以使用DrawThemeBackground
API函数(类为"WINDOW"
,各部分可让您绘制各个控件)。
对于非主题控件,可以使用DrawFrameControl
API函数,其类型设置为DFC_CAPTION
。
完美! DrawFrameControl与我正在寻找的完全一样。 – 2014-10-09 23:20:33