易题高分!!一个关于鼠标移动区域的问题(100分)

  • 主题发起人 主题发起人 xuyingfeng
  • 开始时间 开始时间
X

xuyingfeng

Unregistered / Unconfirmed
GUEST, unregistred user!
我想让一个label控件当鼠标移动到它上面时让它改变颜色,鼠标移动走的时候还让他还原
请问怎么实现?
 
Try this way:
在label的MouseMove事件中: Label1.color:=clyourColor;(要显示的颜色)
在Form的MouseMove事件中: Label1.color:=clFormColor;(窗体颜色)
 
在label的MouseMove事件中: Label1.color:=clred;
在label的Parent控件的MouseMove事件中:Label1.color:= clblack;
 
做成控件怎么实现?
 
判断鼠标的当前位置是否在TLabel上,如果是设一种颜色,不是再设另外一种颜色
 
可以加一个定时器,然后用API函数(GetCursorPos)函数得到当前鼠标位置,以判断是否在LABEL
上,如果是-------如果不是----IT IS OK!
不就是一个控件了么
 
做成控件的话还要简单些,你从Label那里继承下来,然后加入两个过程:WM_MouseEnter,
WM_MouseLeave,这是两个消息发生在鼠标进入和离开的时候,你重载它就行了。
 
多人接受答案了。
 
对不起教父的方法我分了分以后才看到,
 
倒霉,晚了一点! :(
 
看了你(教父)的解答:又有了点新问题
 
请看我提出的问题续
 
后退
顶部