|
|
||||
|
// Buttons können
auf zwei Arten mit einem simplen Schatten hinterlegt // werden. Siehe dazu auch Controls mit Schatten unterlegen // Getestet mit RS 10.4 unter Win11
uses System.UITypes;
procedure Schatten(frm: TForm; cntrl: TControl; versatz: Integer; clr: TColor;
aussparen: boolean);
const
rds = 6;
var
lft, tp, rgt, bt: Integer;
merkb, merkp: TColor;
begin
if (cntrl.Visible) then
with frm.Canvas do
begin
merkb := Brush.Color;
merkp := Pen.Color;
Brush.Color := clr;
Pen.Color := clr;
with cntrl.BoundsRect do
begin
lft := left;
tp := top;
rgt := right;
bt := bottom;
end;
RoundRect(lft + versatz, tp + versatz, rgt + versatz, bt + versatz,
rds, rds);
Brush.Color := merkb;
if aussparen then
begin
Pen.Color := merkb;
RoundRect(lft + versatz, tp + versatz, Pred(cntrl.BoundsRect.right),
Pred(cntrl.BoundsRect.bottom), rds, rds);
end;
Pen.Color := merkp;
end;
end;
procedure TForm1.FormPaint(Sender: TObject);
var
i: Integer;
aussparen: boolean;
begin
aussparen := True;
for i := 0 to ControlCount - 1 do
if Controls[i] is TButton then
Schatten(Self, Controls[i], 6, clBtnShadow, aussparen);
end;
|
||||
|
|
||||
Zugriffe seit
6.9.2001 auf Delphi-Ecke![]() ![]() ![]() ![]() ![]() ![]()
|