以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  是否可以考虑给table加个“关闭”方法?  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=4674)

--  作者:reachtone
--  发布时间:2009/10/19 12:13:00
--  是否可以考虑给table加个“关闭”方法?

同一个table,如果多次用fill或datasource更换数据源,很容易出错。比如,上一个数据源是用的A列排序,更换到B数据源时可能就会因为不存在该列而导致出错,filter也是一样的道理。要避免此错误,必须将相关属性先清空才行。
一般的数据库软件都有“关闭表”,建议老六也给table加个close方法吧。这样不仅可以让我们少写代码,更可以及时释放内存。有的table是放在主窗口的,由于主窗口无法关闭,即使里面的table数据不用了,也无法清理,除非我们给它再fill一个为空的语句,很是麻烦。
另外,还有一点搞不明白的是,table中的Row为什么就没有“可见”属性呢?


--  作者:狐狸爸爸
--  发布时间:2009/10/19 12:19:00
--  
1、关闭窗口,Table就不存在了啊
2、Row是没有办法设置是否可见的,唯一的办法是用标志列。
--  作者:reachtone
--  发布时间:2009/10/19 12:27:00
--  
以下是引用狐狸爸爸在2009-10-19 12:19:00的发言:
1、关闭窗口,Table就不存在了啊
2、Row是没有办法设置是否可见的,唯一的办法是用标志列。

有的table是在主窗口,而主窗口不能关闭,也无法关闭。这样的话,即使table里的数据不用了,也只能在那放着,白占内存。


--  作者:mr725
--  发布时间:2009/10/19 12:49:00
--  
1、楼主说的有理。
2、4楼的办法也行,只是要多加一个空表,且列名不能与相关数据源雷同。
3、如果列不多时,也可以在更换数据源时,先删除所有列(这样不需要多一个空表了),更换数据源。
--  作者:reachtone
--  发布时间:2009/10/19 13:00:00
--  
我们现在讨论的不是变通,而是希望改进。
如果变通的话,方法也有很多,最简单的就是fill一个空的sql语句。
--  作者:roy78
--  发布时间:2009/10/19 13:02:00
--  
很有必要加上close方法,现在的问题就是close后table应该发现什么样的变化才为合理
--  作者:狐狸爸爸
--  发布时间:2009/10/19 13:11:00
--  
用RemoveControl方法从窗口移除Table
--  作者:roy78
--  发布时间:2009/10/19 14:19:00
--  
以下是引用狐狸爸爸在2009-10-19 13:11:00的发言:
用RemoveControl方法从窗口移除Table

没试过,不知道移除了以后,窗口那块会是什么样子的?


--  作者:狐哥
--  发布时间:2009/10/19 14:30:00
--  

只是有点停顿,没有其它变化。

但加个关闭方便好多。