从树结构导出的数据再次导入树结构treeview中,下面程序是需要手动选择文件才能导入,怎么改可以直接选定固定的文件导入,不用选择?

Sub OnClick(Byval Item)                                  
Dim TV,CD,FileName,objxml,i,Element
Set TV=ScreenItems("TV")
Set CD=ScreenItems("CD")
Set objxml=Createobject("MSXML2.DOMDocument")
CD.Filter="*.xml|*.xml"
CD.FilterIndex=20
CD.ShowOpen
FileName=CD.FileName 
TV.nodes.clear
Call objxml.load (FileName)

For i=0 To objxml.getElementsByTagName ("NODE").length-1
 Set Element = objxml.getElementsByTagName ("NODE").Item(i)
 If Element.getAttribute("ParentKey") =""Then
 TV.Nodes.Add,,Element.getAttribute("Key"),Element.getAttribute("Caption")
 Else
 TV.Nodes.Add Element.getAttribute("ParentKey"),4,Element.getAttribute("Key"),Element.getAttribute("Caption")
 End If
Next
For i=1 To TV.nodes.count
 If TV.nodes.item(i).Children>0 Then
  TV.Nodes(i).Expanded=True
 End If

Next
TV.Nodes(1).Selected=True
TV.Nodes(1).EnsureVisible
TV.Style =6
TV.LineStyle =1 

End Sub

最佳答案

名为CD的控件是CommonDialog,删除弹出对话框的代码,设置TV的Load方法为指定路径即可。


Sub OnClick(Byval Item)                                  
Dim TV,CD,FileName,objxml,i,Element
Set TV=ScreenItems("TV")
Set CD=ScreenItems("CD")                                            ''删除
Set objxml=Createobject("MSXML2.DOMDocument")
CD.Filter="*.xml|*.xml"                                           ''删除
CD.FilterIndex=20                                           ''删除
CD.ShowOpen                                           ''删除
FileName=CD.FileName                                            ''设置指定路径如"c:\tmp\test.xml"
TV.nodes.clear

提问者对于答案的评价:
太谢谢你了,问题解决。

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc173222.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2017年6月13日 下午6:35
下一篇 2017年6月13日 下午6:35

相关推荐

  • 打开wincc时弹出提示:应用程序正常初始化(0xc0000005)失败。请单击“确定”终止应用程序

    打开wincc时弹出提示:应用程序正常初始化(0xc0000005)失败。请单击“确定”终止应用程序 最佳答案 是在打开已有项目的时候吗?吧防火墙关了试试 提问者对于答案的评价:我…

    SIMATIC WinCC 2019年6月11日
  • wincc flexible与wincc之间如何相互导入导出变量及图片

    我有个项目,wincc和mp 377各一套,因其都是人机交互东西,而且显示也可以一样,因此我想只做一套,然后将做好的再导到另一套上去。请问这种方式可以吗?如果可以应该怎么…

    SIMATIC WinCC 2019年6月11日
  • SQ2005的安装的问题

    安装过程中提示如图所示,XP SP2包,请问大家如何解决…… 问题补充:系统是新装的XP SP2,就如图片中指示的情况,安装的杀毒软件卸载后还是装不上,请各位同…

    2019年6月10日
  • wincc 6.0

    在报警控件中,如何改变消息列表数量,我的列表数量仅为10个. 最佳答案 不必改变 最大1000个 你看看是不是条件过滤了 提问者对于答案的评价:同意

    SIMATIC WinCC 2019年6月11日
  • 添加GIF动画额外的gif控件

    添加GIF动画额外的gif控件 GIF控件怎么,需要哪些条件。 最佳答案 请参考: 在WinCC里显示动画? 问题:  &nbsp…

    SIMATIC WinCC 2019年6月11日
  • 想做一个弹出对话框

    画面有一个输入输出域,给电机设定转速的,但是电机有两种状态,受上位控制和本地控制。想做电机在本地控制时,输入输出域无法输入并且弹出一个对话框提示电机不受上位控制,确认后对话框消失,…

    SIMATIC WinCC 2018年3月6日
  • WINCC 7.4 SP1 WEB发布,不能操作

    大家好,我用WINCC 7.4 SP1进行WEB发布后,在客户机的浏览器能浏览到画面但是无法操作,这是什么问题呢?(按钮点了没反应、IO域无法输入) 钻石用户推…

    SIMATIC WinCC 2021年7月5日
  • MP277项目回传

    请问MP277的源程序能回传编辑吗?还是只有设备制造商才可编辑?我们是产品最终用户,请大神指点,谢谢! 钻石用户推荐最佳答案 1、一般MP277触屏程序是存于SD卡中,可以把SD卡…

    SIMATIC WinCC 2021年7月5日
  • 求教wincc7.4作为OPC UA服务器

    准备将一台装有wincc7.4的电脑作为OPC UA服务器为第三方平台提供数据,求教怎么设置这台电脑?wincc7.4中怎么设置、授权等OPC UA才能使其成为…

    2020年11月1日
  • 采集输入\输出域的数据到自带SQL表中

    利用全局脚本周期性的写入数据库,脚本代码C与VB的都行! 最佳答案 在Wincc自带的数据库Databases下建立一个新的数据库dbuser,新建表tab001;界面的输入/输出…

    SIMATIC WinCC 2019年6月11日