| 发表于:2007-06-04 22:08:25 楼主 |
下边是我的程序中一段创建treeview的代码: private sub loadnewcomptree() dim i as integer dim rcomp as node 'root component dim scomp as node 'first level component dim sscomp as node 'second level component dim ssscomp as node 'third level component ' create component tree. with trvnewcomp.nodes set rcomp = .add(, , "r component ", "component ") set scomp = .add(rcomp, tvwchild, "s integrated circuit ", "integrated circuit ") scomp.ensurevisible set scomp = .add(rcomp, tvwchild, "s active ", "active ") set sscomp = .add(scomp, tvwchild, "ss transistor ", "transistor ") set sscomp = .add(scomp, tvwchild, "ss diode ", "diode ") set scomp = .add(rcomp, tvwchild, "s passive ", "passive ") set sscomp = .add(scomp, tvwchild, "ss capacitor ", "capacitor ") set sscomp = .add(scomp, tvwchild, "ss coil ", "coil ") set sscomp = .add(scomp, tvwchild, "ss filter ", "filter ") set sscomp = .add(scomp, tvwchild, "ss inductor ", "inductor ") set sscomp = .add(scomp, tvwchild, "ss integrated passive component ", "integrated passive component ") set sscomp = .add(scomp, tvwchild, "ss resistor ", "resistor ") set scomp = .add(rcomp, tvwchild, "s optical active ", "optical active ") set sscomp = .add(scomp, tvwchild, "ss light emitting diode ", "light emitting diode ") set sscomp = .add(scomp, tvwchild, "ss laser diode ", "laser diode ") set sscomp = .add(scomp, tvwchild, "ss photo transistor ", "photo transistor ") set sscomp = .add(scomp, tvwchild, "ss photo diode ", "photo diode ") set sscomp = .add(scomp, tvwchild, "ss integrated optical device ", "integrated optical device ") set sscomp = .add(scomp, tvwchild, "ss imaging sensor ", "imaging sensor ") set sscomp = .add(scomp, tvwchild, "ss photo coupler/isolator/interrupter ", "photo coupler/isolator/interrupter ") set scomp = .add(rcomp, tvwchild, "s optical passive ", "optical passive ") set sscomp = .add(scomp, tvwchild, "ss optical fiber ", "optical fiber ") set sscomp = .add(scomp, tvwchild, "ss optical connectors ", "optical connectors ") set scomp = .add(rcomp, tvwchild, "s electromechanical ", "electromechanical ") set sscomp = .add(scomp, tvwchild, "ss switch ", "switch ") set ssscomp = .add(sscomp, tvwchild, "sss tactile, contact dome ", "tactile, contact dome ") set ssscomp = .add(sscomp, tvwchild, "sss push button ", "push button ") set ssscomp = .add(sscomp, tvwchild, "sss snap action, contact beam ", "snap action, contact beam ") set ssscomp = .add(sscomp, tvwchild, "sss membrane, array ", "membrane, array ") set sscomp = .add(scomp, tvwchild, "ss connector ", "connector ") set sscomp = .add(scomp, tvwchild, "ss relay ", "relay ") set scomp = .add(rcomp, tvwchild, "s mems ", "mems ") set sscomp = .add(scomp, tvwchild, "ss inertial mems ", "inertial mems ") set sscomp = .add(scomp, tvwchild, "ss microactuator ", "microactuator ") set sscomp = .add(scomp, tvwchild, "ss fluidic mems ", "fluidic mems ") set sscomp = .add(scomp, tvwchild, "ss optical mems ", "optical mems ") set sscomp = .add(scomp, tvwchild, "ss rf mems ", "rf mems ") set scomp = .add(rcomp, tvwchild, "s pcb ", "pcb ") set sscomp = .add(scomp, tvwchild, "ss plated through hole ", "plated through hole ") set scomp = .add(rcomp, tvwchild, "s other ", "other ") end with '没有窗体可以链接的nodes在treeview中显示为灰色 with trvnewcomp for i = 2 to 40 .nodes(i).forecolor = gy next '有窗体可以链接的nodes在treeview中显示为黑色 .nodes(13).forecolor = bk 'led .nodes(14).forecolor = bk 'led .nodes(24).forecolor = bk 'tactile switch .nodes(25).forecolor = bk 'tactile switch .nodes(26).forecolor = bk 'tactile switch .nodes(30).forecolor = bk 'connector .nodes(38).forecolor = bk 'pth .nodes(39).forecolor = bk 'pth 'this property to indicate which has a form to link .nodes(14).tag = 1 'led .nodes(26).tag = 1 'switch .nodes(30).tag = 1 'connector .nodes(39).tag = 1 'pth end with end sub 现在程序里只写进去了四个nodes(14,26,30,39)链接的窗体,并且在上边的代码中也是把这四个有窗体可以链接的nodes显示为黑色,其他没有窗体可以链接的nodes显示为灰色。 因为以后还要陆续加进去一些和nodes对应的窗体,所以我想实现的功能是程序运行之后,先自动搜索一下,看哪些nodes有对应的窗体可以链接,然后把有窗体可以链接的显示为黑色,其他的显示为灰色,请问各位大大有什么办法没啊,小弟是百思不得其解啊! |
|
|
|
|