Hallo,
mit diesem Code erzeug ich zur Laufzeit ein Rechteck:
Delphi-Quellcode:
//Rect erzeugen
Dummy_Rect := TShape.Create(Mask);
with Dummy_Rect do
begin
//feste Werte
Parent := Mask;
Enabled := true;
Visible := true;
Brush.Style := bsClear;
//variable Werte
Name := S_Name;
Left := StrToIntDef(Liste.Values['Left'], 0);
Top := StrToIntDef(Liste.Values['Top'], 0);
Width := StrToIntDef(Liste.Values['Width'], 0);
Height := StrToIntDef(Liste.Values['Height'], 0);
Pen.Color := ComponentColor(Liste.Values['Color']);
Pen.Width := StrToIntDef(Liste.Values['PenWidth'], 1);
end;
soweit so gut.
Nun wollte ich einen Horizontalen und Vertikalen Strich zeichnen.
ich dachte ich könnte das auch mit einem TShape machen und bräuchte nur Width bzw. Height auf 1 setzen.
Das geht auch - nur wenn ich Pen.Width verändere, dann bleibt die sichtbare Strichstärke auf 1, da Width bzw. Height auf 1 steht.
[Edit]
Wenn ich nun Width bzw. Height mit verändere, kann es passieren, dass ich die doppelte Pen.Width habe
[/Edit]
Weiss jemand wie ich einen Strich erzeugen kann, der vertikal bzw. horizontal ist und eine einstellbare Strichstärke hat?
Es müsste aber eine Komponente sein, also kein Canvas....
Vielleicht geht es ja mit einem TShape nur weiss ich jetzt nicht wie ich das einstellen muss.