我有一个Delphi XE2项目,其中包含Label1
、BitBtn1
和Image1
等组件。我已经实现了在没有标题栏的情况下拖动窗体,写下了以下代码:
private
{ Private declarations }
procedure WMNCHitTest(var Msg: TWMNCHitTest) ; message WM_NCHitTest;
and
procedure TMainForm.WMNCHitTest(var Msg: TWMNCHitTest) ;
begin
inherited;
if Msg.Result = htClient then Msg.Result := htCaption;
end;
在我的表单中,
Image1.OnMouseMove
和Label1.OnClick
事件对于我的项目是必须的,但它们没有起作用。我如何在客户区域以外拖动表单,而不包括Image1
和Label1
区域?我可以使用一个TPanel
来解决,但这将破坏我的表单的GlassFrame
和SheetOfGlass
属性。