【发布时间】:2012-02-03 22:51:37
【问题描述】:
我想要像这里这样的标签(都是玻璃的):
A program 是用 Delphi 或 C++ Builder 编写的。我在 Winspector Spy & Window Detective 中找不到一类标签。
我知道一个非常好的组件 - rkAeroTabs,但不幸的是它没有显示带有玻璃的活动标签(这就是我需要的),并且其他标签不是完全玻璃的:
(来源:rmklever.com)
有人知道如何获得这些玻璃标签吗?谢谢。
【问题讨论】:
-
你引用的组件有一个“LevelTabActive”属性,应该设置活动标签的不透明度。
-
我是关于 rkAeroTabs 的。有一个错误的标题,rkAeroTabs 组件在图片上,而不是 rkSmartTabs。
-
它更复杂,因为活动选项卡总是与一些非活动选项卡相交。将其设置为“玻璃”或更好地说透明将导致您看到非活动选项卡的一部分(请参阅
here)。解决方法需要进行更深入的修改。还有一个令人不快的伪影,您也可以在屏幕截图中看到它;控件后面有一个由ColorBackground着色的实心矩形。 -
要删除控件后面的实心矩形,您可以发布
FTransparent属性字段。通过将其设置为 True,背景将变为透明(请参阅here)。 -
@maxfax,转到
TrkAeroTabs.SetColors并将Brushes[2] := TGPSolidBrush.Create(MakeColor(255, Byte(c), Byte(c shr 8), Byte(c shr 16)));行修改为...MakeColor(200, Byte(c), Byte(c shr 8), Byte(c shr 16))...,其中200 表示活动标签颜色的透明度。我不知道如何在不透明的元素上绘制玻璃效果。
标签: delphi tabs aero-glass