CM_MOUSEENTER, CM_MOUSELEAVE 메시지를 이용하면 간단하게 check 할 수 있다네요.
새 컨트롤을 만들때 아래와 같이 Message handle를 등록하면 됩니다.
TYourObject = class( TAnyControl )
private
procedure CMMouseEnter( var AMsg : TMessage ); message CM_MOUSEENTER;
procedure CMMouseLeave( var AMsg : TMessage ); message CM_MOUSELEAVE;
end;
implementation
procedure TYourObject.CMMouseEnter(var AMsg: TMessage);
begin
MessageBox(Parent.Handle,'Mouse enter','Message',MB_OK);
end;
procedure TYourObject.CMMouseLeave(var AMsg: TMessage);
begin
MessageBox(Parent.Handle,'Mouse leave','Message',MB_OK);
end;
|