标题:如何刷新Grid控件?
只看楼主
hlhpla
Rank: 2
等 级:论坛游民
帖 子:60
专家分:59
注 册:2010-4-15
结帖率:100%
已结贴  问题点数:10 回复次数:3 
如何刷新Grid控件?
在表单上查询:
表1:

输入无名,得查询结果:
表2:

我查询完后,想通过点击刷返回,就能回到原来的样子,即表1样子...我的代码如下:
thisform.Text1.value=""
thisform.Grid1.recordsource='信息表'
thisform.grid1.refresh
Thisform.Refresh
结果:
在项目管理器里运行可以,点击 刷新返回 能成功返回到表1那样,但连编后点击 刷新返回 无反应
请问:如何解决?
搜索更多相关主题的帖子: Grid 控件 
2010-05-13 15:37
tlliqi
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:204
帖 子:15453
专家分:65956
注 册:2006-4-27
得分:3 
注意:Grid控件数据源的表被关闭、修改或改名时,就会发生Grid属性丢失或显示一片空白(无表格)的现象。
解决办法:在修改Grid数据源或改变数据源之前将Grid的recordsource属性置成Null(或''),然后再修改数据源,修改完后,需要重新设置Grid的数据源。
另外可以使用lockscreen=.T.属性先将表单锁定,等修改完成后,再用lockscreen=.F.刷新数据源的改动,这样可以避免在修改或更新数据源时Grid内只有表格没有内容。
2010-05-13 16:35
qjbzjp
Rank: 13Rank: 13Rank: 13Rank: 13
来 自:尧的故乡
等 级:贵宾
威 望:48
帖 子:1914
专家分:4397
注 册:2007-3-14
得分:3 
如果楼主的表2数据源是用sele ……得到的,可以试试先将这个表或临时表关闭:
use
thisform.Text1.value=""
thisform.Grid1.recordsource='信息表'
thisform.grid1.refresh
Thisform.Refresh

相互学习,互相交流,共同提高。
2010-05-13 17:18
hlhpla
Rank: 2
等 级:论坛游民
帖 子:60
专家分:59
注 册:2010-4-15
得分:0 
我现在把查询代码改成:
Thisform.LockScreen=.T.
SELECT 船员信息表
set filter to 姓名 = ALLTRIM(thisform.text1.Value)
THISFORM.Refresh
Thisform.LockScreen=.F.
刷新返回代码改成:
thisform.Text1.Value=""  &&这句是清空文本框的意思
thisform.Grid1.recordsource='船员信息表'
thisform.Grid1.Refresh
THISFORM.Refresh
还是老问题:在项目管理器里运行可以,点击 刷新返回 能成功返回到表1那样,但连编后点击 刷新返回 什么都没有了
如图:
2010-05-13 17:50



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-306507-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.015296 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved