Foxtable(狐表)用户栏目专家坐堂 → [求助]如何卸载加载的表?


  共有2043人关注过本帖树形打印复制链接

主题:[求助]如何卸载加载的表?

帅哥哟,离线,有人找我吗?
jeff69
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:77 积分:679 威望:0 精华:0 注册:2018/5/2 11:29:00
[求助]如何卸载加载的表?  发帖心情 Post By:2018/7/9 16:33:00 [只看该作者]

各位老师,我在窗口中的分区面板中加载了一个表,在不关闭窗口的情况下如何卸载?

Dim xm As WinForm.ComboBox = e.Form.Controls("ComboBox1")
Dim ywbh As WinForm.TextBox = e.Form.Controls("TextBox1")

Select Case xm.Value
    Case ""
        Return
    Case  "住宿费收入"
        Dim tbl As WinForm.Table
        tbl = e.Form.CreateTable("Table1", "成本明细_酒店", True)
        tbl.SetBounds(10, 10, 3000, 600)
        e.Form.Controls("SplitContainer1").Panel2.AddControl(tbl)
        Tables("加载窗口_Table1").DefaultRowHeight = 30
        Tables("加载窗口_Table1").SetHeaderRowHeight(30,40)
        Tables("加载窗口_Table1").SetColVisibleWidth("业务编号|70|客户名称|150|酒店费用明细_行程|60|酒店费用明细_酒店|200|酒店费用明细_价格|60|双人房床位|50|加床数量|50|加床价格|60|酒店费用总额|100|调整_单人房数量|50|调整_酒店|200|调整_单人房价格|60|调整_加床数量|50|调整_导游床数|50")
        Tables("加载窗口_Table1").Filter = "业务编号 = '" & ywbh.value & "'"
        Tables("加载窗口_Table1").Cols("酒店费用总额").GrandTotal = True
        Tables("加载窗口_Table1").GrandTotal = True 
End Select

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/7/9 18:27:00 [只看该作者]

如果你不卸载,现在有问题?

 

如果要卸载,参考代码 datatables.UnLoad("表名")

 

 


 回到顶部
帅哥哟,离线,有人找我吗?
jeff69
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:77 积分:679 威望:0 精华:0 注册:2018/5/2 11:29:00
  发帖心情 Post By:2018/7/10 9:22:00 [只看该作者]

老师,我设计的是专门有一个加载窗口,可以选择不同的表来加载,如果不卸载的话,后来的表就加载不上去。
我试过用unload语句,但没反应,请问问题出在哪里:

If DataTables.Contains("加载窗口_table1")  Then 
     DataTables.Contains("加载窗口_table1")
End If

 回到顶部
帅哥哟,离线,有人找我吗?
jeff69
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:77 积分:679 威望:0 精华:0 注册:2018/5/2 11:29:00
  发帖心情 Post By:2018/7/10 9:25:00 [只看该作者]

错了,应该是:
If DataTables.Contains("加载窗口_table1")  Then '如果表C已经加载
     DataTables.Unload("加载窗口_table1")'卸载表C
End If
但还是没反应

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/7/10 9:30:00 [只看该作者]

你这个createTable的表格是【副本表】,不需要卸载的。如果要卸载,你需要把其主表卸载掉。

 回到顶部
帅哥哟,离线,有人找我吗?
jeff69
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:77 积分:679 威望:0 精华:0 注册:2018/5/2 11:29:00
  发帖心情 Post By:2018/7/10 10:33:00 [只看该作者]

老师,我的项目的确需要卸载副本表,卸载主表也不现实,因为是好多个关联表存在。能实现吗?如果不行,我要换个设计思路。
我的想法是通过在选择框中选择项目,按查看就会加载相应的表,按退出可以卸载表,然后再选择其他表加载,不需要关闭窗口

 回到顶部
帅哥哟,离线,有人找我吗?
jeff69
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:77 积分:679 威望:0 精华:0 注册:2018/5/2 11:29:00
  发帖心情 Post By:2018/7/10 10:35:00 [只看该作者]


图片点击可在新窗口打开查看此主题相关图片如下:3_看图王.bmp
图片点击可在新窗口打开查看

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/7/10 10:39:00 [只看该作者]

移除表控件,参考代码

 

e.Form.RemoveControl("table1")

 

 


 回到顶部
帅哥哟,离线,有人找我吗?
jeff69
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:77 积分:679 威望:0 精华:0 注册:2018/5/2 11:29:00
  发帖心情 Post By:2018/7/10 10:59:00 [只看该作者]

太感谢了!问题解决了,谢谢!

 回到顶部