hinzufügen 5 Platten
pnlTop
pnlRight
pnlLeft
pnlBottom
pnlRSZ
procedure Tfrmmain.FormCreate(Sender: TObject);
begin
BorderStyle := bsNone;
pnlTop.height:=1;
pnlTop.Align:=alTop;
pnlBottom.height:=1;
pnlBottom.Align:=alBottom;
pnlRight.width:=1;
pnlRight.Align:=alRight;
pnlLeft.width:=1;
pnlLeft.Align:=alLeft;
pnlRSZ.width:=3;
pnlRSZ.height:=3;
pnlRSZ.left:=frmmain.width-3;
pnlRSZ.top:=frmmain.height-3;
pnlRSZ.anchors:=[akRight,akBottom];
pnlTop.Cursor:=crSizeNS;
pnlBottom.Cursor:=crSizeNS;
pnlRight.Cursor:=crSizeWE;
pnlLeft.Cursor:=crSizeWE;
pnlRSZ.Cursor:=crSizeNWSE;
pnlTop.color:=frmmain.color;
pnlBottom.color:=frmmain.color;
pnlRight.color:=frmmain.color;
pnlLeft.color:=frmmain.color;
pnlRSZ.color:=frmmain.color;
End;
procedure Tfrmmain.pnlTopMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
if Button = mbLeft then
begin
ReleaseCapture;
TForm(FrmMain).Perform(WM_SYSCOMMAND, SC_SIZE + WMSZ_Top, 0);
end;
end;
procedure Tfrmmain.pnlRightMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
if Button = mbLeft then
begin
ReleaseCapture;
TForm(FrmMain).Perform(WM_SYSCOMMAND, SC_SIZE + WMSZ_RIGHT, 0);
end;
end;
procedure Tfrmmain.pnlLeftMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
if Button = mbLeft then
begin
ReleaseCapture;
TForm(FrmMain).Perform(WM_SYSCOMMAND, SC_SIZE + WMSZ_Left, 0);
end;
end;
procedure Tfrmmain.pnlBottomMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
if Button = mbLeft then
begin
ReleaseCapture;
TForm(FrmMain).Perform(WM_SYSCOMMAND, SC_SIZE + WMSZ_Bottom, 0);
end;
end;
procedure Tfrmmain.pnlRSZMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
if Button = mbLeft then
begin
ReleaseCapture;
TForm(FrmMain).Perform(WM_SYSCOMMAND, SC_SIZE + WMSZ_BOTTOMRIGHT, 0);
end;
end;
Welche Version von Windows? Und verwenden Sie VCL-Stile? –
In Ihrem Formulardeklarations-Beispielcode ist kein Panel vorhanden. Woher kam es und was sind die Werte der Immobilie? –
Entfernen Sie auch den 'BorderStyle: = bsNone' (legen Sie ihn im Objektinspektor fest) - das Ändern zur Laufzeit hat negative Auswirkungen, einschließlich eines Aufrufs von RecreateWnd. Und ändere den BevelTop des Panels auf 'bvNone', was nicht der Standardwert ist. Ändert das die Dinge für dich? –