Moin!
Mein Fehler. Diese Methode mit der SetBounds() Methode funktioniert nur bei Komponenten. Bei Formularen müsstest du die
WM_SIZING Botschaft behandeln. Dir werden die aktuellen Werte übergeben, die du frei abändern kannst.
/EDIT: Here it is...
Delphi-Quellcode:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs;
type
TForm1 =
class(TForm)
private
{ Private-Deklarationen }
procedure WMSizing(
var Message: TMessage);
message WM_SIZING;
public
{ Public-Deklarationen }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
{ TForm1 }
procedure TForm1.WMSizing(
var Message: TMessage);
var
lRect: PRect;
begin
lRect := Pointer(
Message.lParam);
lRect.Right := lRect.Left + round((4/3)*(lRect.Bottom - lRect.Top));
end;
end.
MfG
Muetze1