请教高手如何让TreeView和ListView有这样的效果?(50分)

  • 主题发起人 主题发起人 ycht
  • 开始时间 开始时间
Y

ycht

Unregistered / Unconfirmed
GUEST, unregistred user!
1.当鼠标移动到TreeView 或 ListView 的某个Item 2秒后,在它们内部的某个区域显示一幅画或字.....具体的效果就像QQ直播那样...
2.另:当 TreeView选择一个节点后,如何定制该节点的颜色?

高手出招吧,没你不行啊 ....回答一个就给分,谢谢!
 
建立一个新的窗体 用来显示显示一幅画或字..... 然后再把他做成具体的效果就像QQ直播那样...
用个timer1记录时间
treeview1.GetNodeAt()方法获取当前Node
 
在OnMouseMove中通过CurNode := TreeView1.GetNodeAt(X, Y);获得当前节点 ,然后使用qiuyan0519先生的办法
 
那第二个问题呢?
分不够可以再加,谢谢.

当 TreeView选择一个节点后,如何定制该节点的颜色?
 
TreeView1.GetNodeAt(X, Y);
得到当前Node
颜色的话 你看看item里有没有color属性
我这里没装DELPHI
 
2。节点的颜色可以通过OnCustomDraw事件中去修改。至于定制么,随便你怎么玩了,得到颜色数值后在事件中修改就可以了。
1。QQ直播?没玩过。显示字倒是可以通过OnHint事件去完成,至于要美化一点就要重载Application的OnHint事件了,这方面的例子DFW上很多。如果要显示一幅图的话,用Hint比较麻烦,不如用上面兄弟说的做。
 
OnCustonDraw 的确可以修改 Item的颜色..
但我只是想在选择后,改变颜色...Windows默认的颜色改不了吗?

qiuyuan0519 说的方法确实可行..
但Form2的坐标很难控制.....我想GetNodeAt(X, Y)的坐标来定义Form2的坐标,但Form2.Show 是个全局的坐标....谁有好的方法呢?
 
多人接受答案了。
 

Similar threads

D
回复
0
查看
2K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
后退
顶部