Foxtable(狐表)用户栏目专家坐堂 → [求助]多选行的操作问题


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

主题:[求助]多选行的操作问题

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


加好友 发短信
等级:九尾狐 帖子:2199 积分:18075 威望:0 精华:0 注册:2011/11/26 20:21:00
  发帖心情 Post By:2023/9/9 9:30:00 [只看该作者]

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:多选行.rar


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


加好友 发短信
等级:超级版主 帖子:106645 积分:542402 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/9/9 10:31:00 [只看该作者]

复选框的多选模式下的处理和表格的筛选有冲突。改为使用逻辑列勾选控制吧,在temp逻辑列里多选后点击勾选。

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:多选行.zip


[此贴子已经被作者于2023/9/9 10:31:59编辑过]

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


加好友 发短信
等级:九尾狐 帖子:2199 积分:18075 威望:0 精华:0 注册:2011/11/26 20:21:00
  发帖心情 Post By:2023/9/9 10:54:00 [只看该作者]

我考虑了另一种办法,就是使用AfterSelRangeChange事件

但是这种用法,在选择radiobutton“全部”的情况下,有一个怪异的现象:当右表选中多行的数量=偶数的时候,不论怎么勾选赋值SPID,都没有任何反应;但选中多行的数量=奇数的时候赋值SPID,勾选起作用。

而在选择radiobutton不是“全部”,不论在右边表勾选行的数量是偶数还是奇数时,勾选关联赋值SPID会起作用

这是BUG?

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:多选行 - 副本.rar


[此贴子已经被作者于2023/9/9 10:54:29编辑过]

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


加好友 发短信
等级:超级版主 帖子:106645 积分:542402 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/9/9 11:18:00 [只看该作者]

用逻辑列控制吧。主要是副本做了筛选的情况下,遍历更改筛选列的条件会导致表格行发生变化,而导致遍历异常。所以在遍历前先取消筛选,具体看22楼刷新按钮

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


加好友 发短信
等级:九尾狐 帖子:2199 积分:18075 威望:0 精华:0 注册:2011/11/26 20:21:00
  发帖心情 Post By:2023/9/9 11:37:00 [只看该作者]

逻辑列控制得一行行勾啊。
如果一次要关联10行,得勾10次,效率太低了

现在的实际情况,要50左表对5000行右表,当然了,右表的关联有的是连续的,有的不连续。连续的情况下批量选中勾选,显然效率高得多啊

但是这种用法,在选择radiobutton“全部”的情况下,有一个怪异的现象:当右表选中多行的数量=偶数的时候,不论怎么勾选赋值SPID,都没有任何反应;但选中多行的数量=奇数的时候赋值SPID,勾选起作用。----这里选中“全部”,是没有数据过滤条件的哟。----而且,如果把刷新事件去掉,就更明显。如果选中的数据行数是偶数批量勾选赋值不想作用;选中的行数是奇数就可以


[此贴子已经被作者于2023/9/9 11:39:21编辑过]

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


加好友 发短信
等级:超级版主 帖子:106645 积分:542402 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/9/9 11:39:00 [只看该作者]

看都不怎么习惯仔细看别人的回复的,也没有仔细看别人的代码。我都说了在temp逻辑列里多选后点击勾选就可以其次全部勾选了。

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


加好友 发短信
等级:九尾狐 帖子:2199 积分:18075 威望:0 精华:0 注册:2011/11/26 20:21:00
  发帖心情 Post By:2023/12/25 10:31:00 [只看该作者]

有个新问题,窗口中左表切换行时,只有SPID匹配的行才会打上勾,用表行切换事件似乎执行会出问题

比如在窗口表中加入事件
dim r as row = e.table.current
dim t2 as table = tables("窗口名_table2")
if r isnot nothing then 
systemready = false 
for each x as row in t2.rows
x("temp") = x("SPID") = r("ID")
next
systemready = true
end if

但加入这个事件以后,在切换行时,会把窗口右表中的SPID<>r("ID")的数据行清空

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


加好友 发短信
等级:超级版主 帖子:106645 积分:542402 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/12/25 10:52:00 [只看该作者]

请上传实例测试

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


加好友 发短信
等级:九尾狐 帖子:2199 积分:18075 威望:0 精华:0 注册:2011/11/26 20:21:00
  发帖心情 Post By:2023/12/25 11:16:00 [只看该作者]

先说目标
1、窗口有三个radiobutton,希望切换时,可表能根据条件过滤加载,即指定关联-右表只显示SPID=左表行ID的数据;未关联—右表显示SPID=空的数据;全部是显示所有(即条件="")
2、选中左表行时,右表选中多行,
打勾时,给这些选中行的SPID赋值=左表行ID
取消勾时,这些选中行的SPID赋值=nothing
3、切换左表行时,可表中的SPID=左表行ID的行,自动打上勾
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:多选行.rar
4、多选的操作、左表切换行事件在radiobutton有选项时,也能正常执行

[此贴子已经被作者于2023/12/25 11:17:15编辑过]

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


加好友 发短信
等级:超级版主 帖子:106645 积分:542402 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/12/25 11:43:00 [只看该作者]

上面的处理逻辑有冲突。

3、切换左表行时,可表中的SPID=左表行ID的行,自动打上勾】 -- 那么其它【表中的SPID<不等于>左表行ID的行】会被清除勾选。这样问题就来了,上面第2步【取消勾时,这些选中行的SPID赋值=nothing】就会被清空SPID赋值。

 回到顶部
总数 34 上一页 1 2 3 4 下一页