以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 能实现编辑副本表的某一行吗? (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=53158) |
||||
-- 作者:瞩望星空 -- 发布时间:2014/7/1 11:19:00 -- 能实现编辑副本表的某一行吗? 以“表A”为例,窗口中放置一个表A副本表,“可编辑”已关。 如果又想通过“编辑”按钮,实现对光标所在行进行编辑,且不开放 整个表A的编辑状态(Tables("表A").AllowEdit = True),只开放 这一行为可编辑,请问如何实现?
|
||||
-- 作者:Bin -- 发布时间:2014/7/1 11:30:00 -- .
|
||||
-- 作者:有点甜 -- 发布时间:2014/7/1 11:45:00 -- 如下
|
||||
-- 作者:瞩望星空 -- 发布时间:2014/7/1 11:51:00 -- 请问,这样操作时,表A的所有记录都锁了(除这一行外),是否在关闭这个窗口时,还进行解锁操作: DataTables("表A").ReplaceFor("_Locked",False) |
||||
-- 作者:Bin -- 发布时间:2014/7/1 11:52:00 -- 嗯.否则表格会处于锁定状态 |
||||
-- 作者:Bin -- 发布时间:2014/7/1 11:52:00 -- 如果表的数据量非常多的话,建议用有点甜的方案. 数据量只是几百行的话,用我的方案简单一点. |
||||
-- 作者:瞩望星空 -- 发布时间:2014/7/1 12:56:00 -- 谢谢二位指导。 假如换一种思路,通过“编辑”铵钮,打开一个窗口来实现编辑副本表某行,不知能否实现? 这个例子中,没有实现的功能是,打个“编辑窗口”时,不知道如何把副本表当前行,与表A实际对应起来。 以下是“编辑窗口” LoadAfter 的代码 \'Dim r As Row =Tables("窗口1_table1").Current \'取窗口1当前所在行 \'Dim idx As Integer = Tables("表A").FindRow(r) \'查找表A相同的行 \'If idx > -1 Then \'找到的话 \'Tables("表A").Position = idx \'设当前行 \'End If |
||||
-- 作者:Bin -- 发布时间:2014/7/1 14:07:00 -- 如期这样,还不是直接用上面的方案好了 |
||||
-- 作者:有点甜 -- 发布时间:2014/7/1 14:16:00 -- 代码
Dim r As Row =Tables("窗口1_table1").Current \'取窗口1当前所在行 |
||||
-- 作者:瞩望星空 -- 发布时间:2014/7/1 15:54:00 -- 谢谢甜总,这个按钮能用。 而且知道了如何取副表的当前行。 不过,较遗憾的一点,编辑表前,必须“Tables("表A").AllowEdit = True”,这样就开放了整个表的可编辑性
[此贴子已经被作者于2014-7-1 17:01:03编辑过]
|