以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  报错找不到控件  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=24395)

--  作者:johnbu
--  发布时间:2012/10/12 16:57:00
--  报错找不到控件
Select Case e.sender.name
    Case "ERP界面button1","ERP界面label4"
        For ib As Integer = 0 To e.form.Controls("ERP界面TabControl2").TabPages.Count -1
            If e.form.Controls("ERP界面TabControl2").TabPages(ib).text = "销售订单" Then
                e.Form.Controls("ERP界面TabControl2").SelectedIndex = ib
                Return
            End If
        Next
        Dim tbl2 As WinForm.TabControl
        tbl2 = e.Form.Controls("ERP界面TabControl2")
        tbl2.TabPages.Add("销售订单","销售订单")
        forms("销售订单").open
        forms("销售订单").Visible = False
        If forms("销售订单").opened Then
            Dim ymy As WinForm.Panel = Forms("销售订单").Controls( "销售订单Panel3" )
            tbl2.TabPages("销售订单").AddControl(ymy)
            ymy.Dock = Windows.Forms.DockStyle.fill
            tbl2.SelectedIndex = tbl2.TabPages.Count-1
        End If
    Case "ERP界面button2","ERP界面label5"
        For ic As Integer = 0 To e.form.Controls("ERP界面TabControl2").TabPages.Count -1
            If e.form.Controls("ERP界面TabControl2").TabPages(ic).text = "销售查询" Then
                e.Form.Controls("ERP界面TabControl2").SelectedIndex = ic
                Return
            End If
        Next
        Dim tbl2 As WinForm.TabControl
        tbl2 = e.Form.Controls("ERP界面TabControl2")
        tbl2.TabPages.Add("销售查询","销售查询")
        forms("销售查询").open
        forms("销售查询").Visible = False
        If forms("销售查询").opened Then
            Dim ymy As WinForm.Panel = Forms("销售查询").Controls("销售查询Panel1")
            tbl2.TabPages("销售查询").AddControl(ymy)
            ymy.Dock = Windows.Forms.DockStyle.fill
            tbl2.SelectedIndex = tbl2.TabPages.Count-1
        End If

End Select



当我点
"ERP界面button1" 可以正常显示,但点"ERP界面button2“时就报错,说找不到 ”销售查询Panel1“  如果反过来点,就是找不到"销售订单Panel3" 哪位知道是怎么回事呀、

--  作者:狐狸爸爸
--  发布时间:2012/10/12 17:09:00
--  

Forms("销售查询").Controls("销售查询Panel1")

 

改为:

 

Forms("销售查询").Controls("Panel1")

 

其他类似,控件名称前面,不想要加上窗口的名称,除非你真的将控件的名称设置为“销售查询Panel1”

其实很简单,打开窗口设计器,看看这些控件真正的名称是什么,代码就是用什么名称。

此外,代码编辑器也会列出控件的名称:

http://www.foxtable.com/help/topics/1525.htm

 


--  作者:johnbu
--  发布时间:2012/10/12 17:16:00
--  
我的那个控件的名就是 销售查贸易Plane1


--  作者:狐狸爸爸
--  发布时间:2012/10/12 17:18:00
--  

要么窗口名错了,要么控件名错了,程序从来不会撒谎。

如果你肯定自己没错,那么做个例子发上来,我们帮你看看。


--  作者:johnbu
--  发布时间:2012/10/12 17:22:00
--  
您在那个群里吗?我发图给你看一下,在这我不太会弄,发不上来图
--  作者:狐狸爸爸
--  发布时间:2012/10/12 17:23:00
--  
联系客服QQ: 800014337
--  作者:johnbu
--  发布时间:2012/10/13 9:50:00
--  
问题已解决,原因是我在退出的时侯窗口没有关闭,还在内存中,在AfterLoad里面把窗口都关闭了就可以了。