以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]afterload代码  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=124710)

--  作者:天一生水
--  发布时间:2018/9/12 11:46:00
--  [求助]afterload代码

并列窗口的名称和对应的表名相同,并列窗口打开时,窗口中的ComboBox1取值同名表当前行的[案号]列的值。

但是打开并列窗口时弹出:不存在名称为""的窗口

老师看看是什么原因?谢谢!

 

窗口的afterload代码:

Dim frm As object    \'判断并列窗口名称
For Each f As WinForm.Form In Forms
    If f.Tablename = "main" AndAlso f.opened AndAlso f.FormStyle = 0 Then
        Dim tab = f.panel.parent.parent
        Dim p = tab.tabpages(tab.Selectedindex)
        frm = Forms(p.controls(0).name)
        Exit For
    End If
Next

If frm IsNot Nothing Then
\'msgbox(frm.Name)
    Dim bh As String = e.Form.Controls("ComboBox1").text
    Dim dr As Row = Tables(frm.Name).Current
    bh = dr("案号")
End If


--  作者:有点甜
--  发布时间:2018/9/12 12:03:00
--  

 

如果你选择的是【主窗口】,也就是第一个,name是空的。

 

如果选择第二个之后的,我测试没问题。