以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  提取窗口所属的空间名  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=169667)

--  作者:yifan3429
--  发布时间:2021/6/25 11:07:00
--  提取窗口所属的空间名
If e.Col.Name = "窗口"  Then
    \'列出所有窗口作为列内容
    Dim s1 As String = ""
    For Each frm As WinForm.Form In Forms
        s1 &= frm.name & "|"
    Next
    e.Table.cols("窗口").ComboList = s1.trim("|")
End If

If e.Col.Name = "窗口控件"  Then
    \'列出所有窗口作为列内容
    Dim s1 As String = ""
    For Each frm As WinForm.Form In Forms
        s1 &= frm.name & "|"
    Next
    e.Table.cols("窗口控件").ComboList = 显示窗口所属的控件名     救助
End If

--  作者:有点蓝
--  发布时间:2021/6/25 11:26:00
--  
获取窗口所有控件?
http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=85400

--  作者:yifan3429
--  发布时间:2021/6/25 17:15:00
--  
比如 窗口1 的全部控件名怎么获取到 表格 作为下拉选项
--  作者:有点蓝
--  发布时间:2021/6/25 17:31:00
--  
dim s as string
For Each c As WinForm.Control In e.Form.Controls
    s = s & "|" & c.name

Next

msgbox(s)

--  作者:yifan3429
--  发布时间:2021/6/26 22:15:00
--  
If e.Col.Name = "控件名称" Then
    Dim dr As Row = CurrentTable.Current
    Dim s As String = ""
    For Each c As WinForm.Control In Forms(dr("窗口名称")).Controls
        \'s & = c.name & "|"
        s = s & "|" & c.name
    Next
    Tables("系统代码").cols("控件名称").ComboList = s.trim("|")
End If


还是不行 没有反应

--  作者:有点蓝
--  发布时间:2021/6/27 20:42:00
--  
If e.Col.Name = "控件名称" Then
    Dim dr As Row = CurrentTable.Current
    Dim s As String = ""
Forms(dr("窗口名称")).open
    For Each c As WinForm.Control In Forms(dr("窗口名称")).Controls
        \'s & = c.name & "|"
        s = s & "|" & c.name
    Next
    Tables("系统代码").cols("控件名称").ComboList = s.trim("|")
End If