Om een popup venster totaal naar smaak aan te passen heb ik het volgende gebruikt om een image of label te verplaatsen. Had er toen nog niet zoveel verstand van en heb dus de code kant en klaar over genomen. Nadeel van deze procedure:
De label is niet transparant tijdens verslepen. Maar alla, 't werkt toch he?
Code:
procedure TPopupSettingsForm.LbColorMouseDown(Sender: TObject;
Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
var
Dummy: TPanel;
SavedCursor: TCursor;
begin
SavedCursor := Screen.Cursor;
Screen.Cursor := crDrag;
with TLabel(Sender) do
begin
Dummy := TPanel.Create(Owner);
Dummy.Parent := Parent;
Dummy.BevelOuter := bvNone;
Dummy.Alignment := Alignment;
Dummy.Caption := Caption;
Dummy.SetBounds(Left, Top, Width, Height);
Parent.Update;
end;
ReleaseCapture;
Dummy.Perform(WM_SysCommand, $F012, 0);
with Dummy do
LbColor.SetBounds(Left, Top, Width, Height);
Dummy.Free;
Screen.Cursor := SavedCursor;
end;
edit: er hoeven geen property's worden aangepast.
Bookmarks