I miss an OnMouseEnter/OnMouseExit-Event in all
visible components.
Any comments?
Thank you.
Udo Weik
Engineering Office, Germany
"CBuilder example for SeonJoo Lee MouseEnter / Leave"
> There is a example component on the borland.pubilc.attachments newsgroup
> under the heading
>
> "CBuilder example for SeonJoo Lee MouseEnter / Leave"
Unfortunately, I can't find the example in the newsgroup.
Then, once you have that, here's how you add those events yourself:
class TMyComponent : public TWhateverBaseClassYouUse
{
private:
void __fastcall CMMouseEnter(TMessage&);
void __fastcall CMMouseLeave(TMessage&);
protected:
TNotifyEvent FOnMouseOver;
TNotifyEvent FOnMouseOut;
public:
BEGIN_MESSAGE_MAP
VCL_MESSAGE_HANDLER(CM_MOUSEENTER, TMessage, CMMouseEnter)
VCL_MESSAGE_HANDLER(CM_MOUSELEAVE, TMessage, CMMouseLeave)
END_MESSAGE_MAP(TWhateverBaseClassYouUse)
__property TNotifyEvent OnMouseOver = {read=FOnMouseOver,
write=FOnMouseOver};
__property TNotifyEvent OnMouseOut = {read=FOnMouseOut,
write=FOnMouseOut};
};
void __fastcall TMyComponent::CMMouseEnter(TMessage&)
{
if(FOnMouseOver)
FOnMouseOver(this);
}
void __fastcall TMyComponent::CMMouseLeave(TMessage&)
{
if(FOnMouseOut)
FOnMouseOut(this);
}
Gambit
"Udo Weik" <WeikE...@aol.com> wrote in message
news:3A60DFF3...@aol.com...
01/01/2001 20:09
I believe it's still on the attachments newsgroup
Create your own label. To add MouseOver and MouseOut insert the following
code:
class ColorLabel : public TLabel
{
private:
void __fastcall CMMouseEnter(TMessage&);
void __fastcall CMMouseLeave(TMessage&);
protected:
TNotifyEvent FOnMouseOver;
TNotifyEvent FoMouseOut;
public:
BEGIN_MESSAGE_MAP
VCL_MESSAGE_HANDLER(CM_MOUSEENTER, TMessage, CMMouseEnter)
VCL_MESSAGE_HANDLER(CM_MOUSELEAVE, TMessage, CMMouseLeave)
END_MESSAGE_MAP(TLabel)
__published
__property TNotifyEvent OnMouseOver = {read = FOnMouseOver,
write=FOnMouseOver};
__property TNotifyEvent OnMouseOut = {read = FOnMouseOut,
write=FOnMouseOut};
}
void __fastcall TColorLabel::CMMouseEnter(TMessage&)
{
if(FOnMouseOver)
FOnMouseOver(this);
}
void __fastcall TColorLabel::CMMouseLeave(TMessage&)
{
if(FOnMouseOut)
FOnMouseOut(this);
}
http://homepage.ntlworld.com/mstainsby