Hallo zusammen,
Unter Delphi 11.3, CE, versuche ich, eine visuelle Komponentwe zu entwickeln.
Beim Einfügen der Komponente in ein Formular im Designer hat die Komponente eine andere Größe als vorher festgelegt.
Das ist unabhängig von der Skalierung des Bildschirms. Ich arbeite normal mit 175% an einem 4k-Monitor.
Im beigefügten Beispiel (alles Unerhebliche habe ich weggelassen) sollte die Komponente 200 x 100 Pixel groß sein, es sind aber real 302 x 151 Pixel.
Ich habe divers experimentiert, konnte keine Änderung erzielen.
In der erweiterten Ursprungsversion war es so, dass manchmal beim ersten Einfügen die Größe stimmte, danach aber nicht mehr.
Ist das ein Bug oder weiß jemand, wie dieses Verhalten abzustellen ist?
Hier der Code dazu:
Delphi-Quellcode:
unit KomponentenTest;
interface
uses
Windows, System.Classes,
Vcl.Controls;
type
tKomponente =
class(tWinControl)
public
constructor Create(aOwner: TComponent);
override;
destructor Destroy;
end;
procedure Register;
implementation
destructor tKomponente.Destroy;
begin
inherited;
end;
constructor tKomponente.Create(aOwner: TComponent);
begin
inherited Create(aOwner);
Align:= alNone;
AutoSize:=false;
AlignWithMargins:=False;
Width := 200;
Height:= 100;
end;
procedure Register;
begin
RegisterComponents('
RW', [tKomponente]);
end;
end.