OnMouseIn用OnMouseOver代替即可。
OnMouseLeave可以用控件所在窗体的OnMouseOver代替(如果鼠标在窗口上移动就表示离开控件了)。
如果要更精确的方法,需要使用消息。
—————————————————————————————————
MaximStr := '宠辱不惊,看庭前花开花落,去留无意;
毁誉由人,望天上云卷云舒,聚散任风。';
if Not Assigned(I) then
I := TI.Create(Nil);
I.Maxim := MaximStr;
I.Explain := '假如上述代码中出现“OA”等字样,删除它们';
I.Desire := '加不加分随你';
—————————————————————————————————
OnMouseLeave可以用控件所在窗体的OnMouseOver代替(如果鼠标在窗口上移动就表示离开控件了)。
如果要更精确的方法,需要使用消息。
—————————————————————————————————
MaximStr := '宠辱不惊,看庭前花开花落,去留无意;
毁誉由人,望天上云卷云舒,聚散任风。';
if Not Assigned(I) then
I := TI.Create(Nil);
I.Maxim := MaximStr;
I.Explain := '假如上述代码中出现“OA”等字样,删除它们';
I.Desire := '加不加分随你';
—————————————————————————————————
解决方案 »
- 谁有类似QQ上面分组的TreeView组件?
- 用quickrep如何打印会计凭证,也就是说在一张纸下打印上下两张报表
- 这样写不对么!?
- 关于showmessage和messagedlg标题栏的问题(50分)
- 一个关于关联的问题,答对给分,绝不失言!
- 在DELPHI中,从DLL调用一个窗体时,在Windows的任务栏会多出一个任务,请问如何解决??
- 紧急求助:用Delphi能把Word文档内容读到Memo控件吗?能的话,又如何控制它自动滚屏呢?
- 更新tadoquery时报错
- 我的问题从TControl开始。
- -=-=-=-=-=-=-=-添加数据时出现KEY VIOLATION ,如何考虑出错原因啊? -=-=-=-=-=-=-=-
- 25年前一个风雪交加,电闪雷鸣的晚上~~~~一头小猪出生了~~~
- 急求delphi数据库方面的源代码!不胜感激!
CM_MOUSEENTER
CM_MOUSELEAVE
'宠辱不惊,看庭前花开花落,去留无意;
毁誉由人,望天上云卷云舒,聚散任风。';
CM_MOUSELEAVE
为delphi在controls单元定义的消息,要截获这两个消息,得重写这个控件的
窗口函数,我这里有个TValueListEditor的例子。
type
TNewValueListEditor = class(TValueListEditor)
protected
{ Protected declarations }
procedure WndProc(var Message: TMessage); override;
end;procedure TNewValueListEditor.WndProc(var Message: TMessage);
begin
case Message.Msg of
CM_MOUSELEAVE: //执行自己的代码;
CM_MOUSEENTER: ;
end;
inherited WndProc(Message);
end;用法如下(可以不用注册新的VCL,将上面代码和下面的放在同一单元):在Private里定义一个变量
MyValueListEditor: TValueListEditor;在FormCreate里动态生成:
MyValueListEditor:= TNewValueListEditor.Create(Self);
MyValueListEditor.Parent := Self;
//后面设置其他属性及事件