以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  求助,关于记录窗口问题。  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=127666)

--  作者:18523500398
--  发布时间:2018/11/19 16:40:00
--  求助,关于记录窗口问题。
我的问题的图标和视频写在我的链接里面,因为我这边不能添加附件。
我用记录窗口显示我在table中选中的行的详细信息,详细信息因为保存在两个表里面,所以我就用临时表把查询出来的数据保存,然后把临时表绑定给记录窗口,我这样做,我单击一行的时候没问题,当我频率过快的时候单击行就会出错。

--  作者:18523500398
--  发布时间:2018/11/19 16:43:00
--  
老师,帮我看一下是什么问题影响的。
--  作者:有点甜
--  发布时间:2018/11/19 17:01:00
--  

 

你单击行或者切换行的事件里面,写了什么代码,贴出对应代码看看。

 

 


--  作者:18523500398
--  发布时间:2018/11/19 17:03:00
--  
就是那个第一张图片的代码,就是行的click时间
--  作者:18523500398
--  发布时间:2018/11/19 17:07:00
--  
\'\'记录窗口打开
 Forms("金相test").open()
\'\'临时表保存数据
Dim q As new QueryBuilder
q.TableName = "金相临时_详细"
q.ConnectionName=_strBooks
q.SelectString="exec show_mftf_detal \'" & Tables("金相详细_Table1").Current("记录号") & "\',\'mc_tf_jxydjy\',\'mc_mf_jxydjy\'"
q.Build
\'\'设置列高
Dim i As Integer
i=Tables("金相临时_详细").Cols.Count
Vars("_int_tbcount")=i
Dim j As Integer
For j=0 To i-1
    Tables("金相临时_详细").Cols(j).RecordRowHeight=2
Next
\'\'MessageBox.Show(Tables("金相临时_详细").Rows(0)("记录号"))
\'\'记录窗口绑定临时表
Dim rgd As WinForm.RecordGrid = Forms("金相test").Controls("RecordGrid1")
Tables("金相临时_详细").AllowEdit=False
rgd.Table=Tables("金相临时_详细")
rgd.Build

--  作者:有点甜
--  发布时间:2018/11/19 17:16:00
--  

build生成表格之前,先把记录窗口绑定的表设置成另一个,如

 

Dim rgd As WinForm.RecordGrid = Forms("金相test").Controls("RecordGrid1")
rgd.Table=Tables("表A")
rgd.Build
 
\'后面写你原来的代码,略加改动

--  作者:18523500398
--  发布时间:2018/11/19 17:20:00
--  
把绑定的表设置成另外一个?
--  作者:18523500398
--  发布时间:2018/11/19 17:24:00
--  
这个意思哈?


Dim jxtest As WinForm.Form = Forms("金相test")
If jxtest.Opened=False Then
 Forms("金相test").open()
End If
Dim rgd As WinForm.RecordGrid = Forms("金相test").Controls("RecordGrid1")
rgd.Table=Tables("首页")
rgd.Build
\'\'临时表保存数据
Dim q As new QueryBuilder
q.TableName = "金相临时_详细"
q.ConnectionName=_strBooks
q.SelectString="exec show_mftf_detal \'" & Tables("金相详细_Table1").Current("记录号") & "\',\'mc_tf_jxydjy\',\'mc_mf_jxydjy\'"
q.Build
\'\'设置列高
Dim i As Integer
i=Tables("金相临时_详细").Cols.Count
Vars("_int_tbcount")=i
Dim j As Integer
For j=0 To i-1
    Tables("金相临时_详细").Cols(j).RecordRowHeight=2
Next
\'\'MessageBox.Show(Tables("金相临时_详细").Rows(0)("记录号"))
\'\'记录窗口绑定临时表
Tables("金相临时_详细").AllowEdit=False
rgd.Table=Tables("金相临时_详细")
rgd.Build

--  作者:18523500398
--  发布时间:2018/11/19 17:26:00
--  
是因为点击过快了过后,临时表还没有计算出来的缘故吗?
--  作者:有点甜
--  发布时间:2018/11/19 17:27:00
--  
以下是引用18523500398在2018/11/19 17:26:00的发言:
是因为点击过快了过后,临时表还没有计算出来的缘故吗?

 

差不多8楼的意思。build临时表的时候,是先删除表后再新建表的。