如何知道鼠标在DBGrid中某行某列上停留了1秒以上?

CrazyMan 2000-02-13 03:48:00
我用的是InfoPower 2000.03 for Delphi 5.0的TwwDBGrid,我想实现:“用户把鼠标停留在DBGrid的某行的Memory字段上若干时间,即开个小窗口显示该字段的全部内容。”,请各位高手指点指点!
...全文
132 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
CrazyMan 2000-02-14
  • 打赏
  • 举报
回复
是否有一个专门的函数,根据OnMouseMove事件中的X和Y参数直接算出:鼠标放在哪行哪列?
Lin 2000-02-14
  • 打赏
  • 举报
回复
DBGrid的 MouseCoord(X, Y: Integer): TGridCoord;即可根据OnMouseMove事件中的X和Y参数直接算出鼠标放在哪行哪列。
limodou 2000-02-13
  • 打赏
  • 举报
回复
应该使用全局变量存放上次鼠标留的位置,如grow和gcol表示上次停留的单元格。初始值就设为(-1,-1)好了。
在OnMouseMove事件里进行判断grow与gcol与当前单元格的row与col是否一致,如果不一致则使定时器有效,同时将grow与gcol赋一个新值;否则不处理。其它处理如sky_horse所说。
kxy 2000-02-13
  • 打赏
  • 举报
回复
楼上说的不错,请参考Forms.pas中的Hint
sky__horse 2000-02-13
  • 打赏
  • 举报
回复
1.用DbGrid的OnMouseMove事件启动一个TTimer.
2.用TTimer测出鼠标停留时间.
3.用TTimer的OnTimer事件启动Memory字段的显示...

5,388

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧