以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]遍历窗口 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=142651) |
-- 作者:江南小镇 -- 发布时间:2019/11/2 19:54:00 -- [求助]遍历窗口 老师好,下面代码不能遍历模式窗口和DropDownForm的控件。 Dim tv As WinForm.TreeView = Args(0) tv.Nodes.Clear Dim nd As WinForm.TreeNode Dim name As String Dim sname() As String For Each f As WinForm.Form In Forms name = f.Category sname = name.Split("\\") Dim frmnd As WinForm.TreeNode If sname.Length = 1 AndAlso sname(0) = "" Then frmnd = tv.Nodes.Add(f.name) Else If tv.Nodes.Contains(sname(0)) = False Then nd = tv.Nodes.Add(sname(0)) Else nd = tv.Nodes(sname(0)) End If For i As Integer = 1 To sname.Length - 1 If nd.Nodes.Contains(sname(i)) = False Then nd = nd.Nodes.Add(sname(i)) Else nd = nd.Nodes(sname(i)) End If Next frmnd = nd.Nodes.Add(f.name) End If Dim opened = f.Opened f.Open For Each c As object In f.controls try frmnd.Nodes.Add(c.name, c.name & " | " & c.Text) catch ex As exception frmnd.Nodes.Add(c.name) End try Next If opened = False Then f.Close Next |
-- 作者:有点蓝 -- 发布时间:2019/11/3 20:01:00 -- 确实没有办法遍历。把这些窗口都改为独立窗口再遍历 |