【发布时间】:2011-09-24 18:27:38
【问题描述】:
如何在启用 Windows Aero 功能的情况下以编程方式获取 TProgressBar 控件的条形颜色和背景颜色?
我正在使用第三方进度条控件,而不是 Delphi 附带的默认进度条控件,我正在尝试用正确的颜色绘制控件。
我使用 Delphi 2010。
【问题讨论】:
-
我不认为进度条是单一颜色的。它是用一些漂亮的渐变绘制的。你想要一个特定的平均颜色吗?它仍然不会像航空主题。也许您想知道如何扩展第三方控件,使其能够感知并使用主题绘制自己?
-
沃伦是对的。没有“条形颜色”。 “Delphi自带”的其实是一个原生的Windows进度条控件(其实大部分是Delphi自带的组件,如
TEdit、TButton、TMemo、TRichEdit、TListBox、@ 987654328@ 等只是本机控件/对象的包装器)。标准 Windows 控件有什么问题?如果需要自定义控件,可以很方便的使用主题服务API来绘制当前主题的进度条部分。 -
查看我的回答 here 和 this question。
-
我很好奇。为什么要使用 3rd 方进度条控件?除了标准系统控制之外,它还提供什么?
-
无法支持 Aero 主题。 :-) 很讽刺,是吗?
标签: delphi windows-7 colors progress-bar aero