如何给TreeView控件加背景图,就象NetAnts1.X中那样?

alphafox 2000-07-10 12:57:00
...全文
420 20 打赏 收藏 转发到动态 举报
写回复
用AI写文章
20 条回复
切换为时间正序
请发表友善的回复…
发表回复
alphafox 2001-04-20
  • 打赏
  • 举报
回复
有没有更好的办法了?
hhxz770 2001-03-15
  • 打赏
  • 举报
回复
shines大侠
能给我Email一份吗?
hhxz_wind@sina.com
我是新手,现只能给20分不好意思。
hhxz770(风灵)

TrueZq 2001-02-14
  • 打赏
  • 举报
回复
shines大侠
能给我Email一份吗?
TrueZq@21cn.com
alphafox 2000-09-18
  • 打赏
  • 举报
回复
to shines
东西收到,但还是看不到效果。没关系再说吧,谢谢你的方案,我要给分了。(我周末不上网,让你久等了,不好意思:)
shines77 2000-09-18
  • 打赏
  • 举报
回复
SCUM: 这个东西是值点分的,要不你有本事你也来一个,而且我也是付出了劳动的。

ahphafox: 收到了我的第二封信了吗? 如果实在还是不能在IDE下看到效果的话,可能是由于少了在编译状态debug的dll,我这装有许多类似功能的工程,所以我感觉不出来缺什么,也许你需要的正是那个,不过没有的话也不太要紧。如果你想要,我可以给你试一试。
NiceFeather 2000-09-17
  • 打赏
  • 举报
回复
兄弟们讨论高科技难题正欢,SCUM,你是什么鸟?!
SCUM 2000-09-17
  • 打赏
  • 举报
回复
分死你们这些死要分的东西!
shines77 2000-09-16
  • 打赏
  • 举报
回复
vbfans: 好的。

alphafox: 给分吧

NiceFeature: 你能回答就回答吧,我要50分,零头给你。
bestbestbest 2000-09-15
  • 打赏
  • 举报
回复
这是一段“改变TreeView背景色”的代码:

Private Declare Function SendMessage Lib "User32" Alias "SendMessageA" (Byval hWnd As Long, Byval wMsg As Long, Byval wParam As Long, lParam As Long) As Long
Private Declare Function GetWindowLong Lib "User32" Alias "GetWindowLongA" (Byval hWnd As Long, Byval nIndex As Long) As Long
Private Declare Function SetWindowLong Lib "User32" Alias "SetWindowLongA" (Byval hWnd As Long, Byval nIndex As Long, Byval dwNewLong As Long) As Long
Private Const GWL_STYLE = -16&
Private Const TVM_SETBKCOLOR = 4381&
Private Const TVM_GETBKCOLOR = 4383&
Private Const TVS_HASLINES = 2&
Dim frmlastForm As Form
Private Sub Form_Load()
Dim nodX As Node
Set nodX = TreeView1.Nodes.Add(, , "R", "Root")
Set nodX = TreeView1.Nodes.Add("R", tvwChild, "C1", "Child 1")
Set nodX = TreeView1.Nodes.Add("R", tvwChild, "C2", "Child 2")
Set nodX = TreeView1.Nodes.Add("R", tvwChild, "C3", "Child 3")
Set nodX = TreeView1.Nodes.Add("R", tvwChild, "C4", "Child 4")
nodX.EnsureVisible
TreeView1.Style = tvwTreelinesText ' Style 4.
TreeView1.BorderStyle = vbFixedSingle
End Sub
Private Sub Command1_Click()
Dim lngStyle As Long
Call SendMessage(TreeView1.hWnd, TVM_SETBKCOLOR, 0, Byval RGB(255, 0, 0))
'改变背景到红色
lngStyle = GetWindowLong(TreeView1.hWnd, GWL_STYLE)
Call SetWindowLong(TreeView1.hWnd, GWL_STYLE, lngStyle - TVS_HASLINES)
Call SetWindowLong(TreeView1.hWnd, GWL_STYLE, lngStyle)
End Sub



vbfans 2000-09-15
  • 打赏
  • 举报
回复
shines大侠+大哥
一定给你高分!我上次不是给你50分了吗?这次也决不誓言!
先谢了。
NiceFeather 2000-09-15
  • 打赏
  • 举报
回复
to alphafox:
“为什么在VB6IDE环境下运行看不到效果”答案我知道,我回答能给我一些分吗?
shines77 2000-09-15
  • 打赏
  • 举报
回复
to alphafox:
主要是我用的是VB5.0的控件,我帮你改一下,寄给你,试试。

to vbfans:
你能给我分吗?
vbfans 2000-09-15
  • 打赏
  • 举报
回复
shines大侠,我也需要你的帮助。可以mail一份给我吗?
alphafox 2000-09-15
  • 打赏
  • 举报
回复
我不能分几次给分吗?
alphafox 2000-09-15
  • 打赏
  • 举报
回复
to shines
答案收到,很好!先给20分,因为还有个问题,为什么在VB6IDE环境下运行看不到效果,而必须编译成EXE文件再运行才能看到效果,若帮忙解决了这个问题,分数全部送上!
shines77 2000-09-14
  • 打赏
  • 举报
回复
请你看信!
shines77 2000-09-14
  • 打赏
  • 举报
回复
我可以回答你的问题,请看你的email,如解决了请加分,这下你爽了吧。
alphafox 2000-09-14
  • 打赏
  • 举报
回复
这是我很久前的一个问题,很长时间没人回答,看看现在有那位大虾可以接下!!!
alphafox 2000-07-11
  • 打赏
  • 举报
回复
dongdong的问题我倒可以解决。你应该是指结点图标的背景色与TREEVIEW的背景色不一致。我想你每个结点的图标应该放在一个IMAGELIST中,假设你要把TREEVIEW的背景色改为红色,那么试试如下的语句:
Set Imagelist1.backcolor=RGB(255,0,0)
SendMessage(TreeView1.hWnd,TVM_SETBKCOLOR,0, ByVal RGB(255,0,0))
这样就应该不会有问题了。
dongdong 2000-07-10
  • 打赏
  • 举报
回复
我曾经试过,但没有成功,我能够用API改变其背景颜色,但修改后,当+号展开后,背景色不一,很难看,所以没有继续。如果你有了答案,方便的话告诉我一下,谢了。

1,451

社区成员

发帖
与我相关
我的任务
社区描述
VB 控件
社区管理员
  • 控件
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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