导航
  • 主页
  • API 调用
  • 基础类
  • 控件与界面
  • 数据库相关
  • DataWindow
  • 项目管理
  • Web 应用
  • 脚本语言

如何实现在DW上鼠标移动到某一项的时候显示tip?

非零非非零 2008-01-17 04:38:00
我试过在pdm_dwmousemove时间来调用自定义显示tip的对象,但是没有用,可能是pdm_dwmousemove对应的消息并不是WM_MOUSEMOVE

还要请教各位高手,谢谢.
...全文
118 点赞 收藏 4
写回复
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
sun9moon 2008-01-19
本人是如些实现的:先自定义一个标准可视化用户对象uo_siglelineedit
然后在pbm_mousemove中实现,如
ls_temp =getobjectatpointer() //获得鼠标所指的控件名\tab符和行号组成的的字符串,如果发生错误则返回""
ls_name=left(ls_temp,(pos(ls_temp,"~t") -1)) //获得对象名
然后创建用户对象
u_text[1] = create uo_siglelineedit
li_rtn = OpenUserObject(u_text[1],xpos+80,ypos+100) //在指定位置打开对象
u_text[1].backcolor = RGB(128,128,0) //65536 * Blue+ 256 * Green+ Red
u_text[1].text = ls_name
u_text[1].FaceName = "宋体"
u_text[1].textsize = 12
u_text[1].width = len(u_text[1].text)*28
u_text[1].height = 50
u_text[1].displayonly = true
u_text[1].bringtotop = true
u_text[1].border = false
timer(1) //多少秒后在timer事件中关闭本对象
回复
lllyyymmm 2008-01-19
可以通过别的控件为精确实现,比如用文本,当你移到某一项是,文件就显示你要的信息,当然你也要控制文本的显示位置,这种方法我弄过,觉得还满不错的,你可以试试
回复
非零非非零 2008-01-17
刚才自己想了个笨办法,用pdm_mousemove和pdm_dwmousemove同时来控制可以实现,定义一个窗口Boolean变量lb_showtip来控制是否显示Tip
在pdw_dwmousemove事件里面如果鼠标移动到需要显示tip的列,把lb_showtip改变为True,否则为False,同时把需要显示的内容赋值到dw的tag里面,在pdm_mousemove里面如果lb_showtip为true则显示tip。

用这个方法可以基本实现需求,但是有时候控制不是很精确,因为pdm_mousemove比pdm_dwmousemove先触发

还是希望有高手提供更好的办法.
回复
bai_jiong 2008-01-17
ding
回复
发动态
发帖子
PowerBuilder
创建于2007-09-28

803

社区成员

PowerBuilder 相关问题讨论
申请成为版主
社区公告
暂无公告