如何设置主题TStatusBar
组件的背景颜色?当我设置color属性时,它仅在Enabled runtime themes
被禁用时才有效。
提前感谢。
答案 0 :(得分:2)
不确定这是否正是您所需要的,但您可以简单地禁用特定控件的主题绘画,在本例中为状态栏,如下所示:
Uses
uxTheme;
SetWindowTheme(StatusBar1.Handle, '', '');
答案 1 :(得分:1)
您可以使用自己的颜色编写自己的OwnerDraw-Event并绘制StatusBar(准确地说:每个面板!):
procedure TForm1.StatusBar1DrawPanel(StatusBar: TStatusBar;
Panel: TStatusPanel; const Rect: TRect);
begin
with StatusBar.Canvas do begin
Brush.Color := clRed;
FillRect(Rect);
TextOut(Rect.Left, Rect.Top, 'Panel '+IntToStr(Panel.Index));
end;
end;
但是有了主题,就无法在Object-Inspector中更改颜色。