windev中自定义选定列的使用和注意事项
windev系统默认的多选,需要使用Ctrl+或者Shift+来点选,使用并不方便,所以我们一般在首列增加checkbox列,并在行头增加一个checkbox控制,作为全选使用。使用这个方法时,有几个地方需要注意:
1、如何获得已选定行的下标?
(1)首先要打开表格的多选模式,注意一定要打开多选模板,否则..Selecte或者TableSelectPlus都不起作用
(2)通过For遍历,将checkbox为true的行的选定状态设置为true,如下:
FOR EACH ROW n OF TABLE_固定参数 IF TABLE_固定参数.COL_Select = True THEN
TABLE_固定参数[n]..Selected = True
END END
//或者
FOR EACH ROW n OF TABLE_固定参数 IF TABLE_固定参数.COL_Select = True THEN
TableSelectPlus(TABLE_固定参数,n)
END END
3、批量删除时,为什么遍历使用TableDelete不起作用?
TableDelete删除指定下标的行或者当前的选择行,当删除一行时,表格刷新,因减少了一行,所以下标都产生变化。如果一定要在表格层面操作批量删除的话,可结果第1点的多选,使用TableDeleteSelect,一次性删除选择行。如下代码所示:
//以下代码批量删除不生效
FOR EACH ROW n OF TABLE_固定参数
IF TABLE_固定参数.COL_Select = True THEN
TableDelete(TABLE_固定参数)//或者TableDelete(TABLE_固定参数,n)
END END
//需要使用以下代码
FOR EACH ROW n OF TABLE_固定参数
IF TABLE_固定参数.COL_Select = True THEN
TableSelectPlus(TABLE_固定参数,n) //或者 TABLE_固定参数[n]..Selected = True
END
END
TableDeleteSelect(TABLE_固定参数)
4、为什么tablesave,tabledelete等函数都不起作用了?
注意表格绑定的数据是data file(实表)还是Query(虚表)。如果是虚表,则table类的保存、更改或删除都不起作用,需要使用数据层面的函数。通过表格的绑定ID来HReadSeekFirst匹配。
5、全选逻辑如何实现?
(1)全选按钮True时,选定列全选(全部为True),全选按钮为False时,选定列全不选(全部为False)。代码如下:
FOR EACH ROW OF TABLE_固定参数
TABLE_固定参数.COL_Select = MySelf
END
(2)选定列全部True时,全选按钮为True,选定列只要有一行为False,则全选按钮为False。代码如下:
//根据选定按钮,修改隐藏按钮状态
FOR EACH ROW n OF TABLE_固定参数
IF TABLE_固定参数[n].COL_Select THEN
BTN_删除固定参数..Visible = True
BREAK
ELSE
BTN_删除固定参数..Visible = False
END
END //根据选定按钮,修改全选按钮状态
CHECK_固定参数全选 = False
FOR EACH ROW n OF TABLE_固定参数
IF NOT TABLE_固定参数[n].COL_Select THEN
RETURN
END
END
CHECK_固定参数全选 = True
//方法二:还可以根据选定行的行数和表格总行数比较来判断,但方法一的效率更高。同时,方法一也展示了根据选定行隐藏和显示按钮的方法!
windev中自定义选定列的使用和注意事项的更多相关文章
- shiro中自定义realm实现md5散列算法加密的模拟
shiro中自定义realm实现md5散列算法加密的模拟.首先:我这里是做了一下shiro 自定义realm散列模拟,并没有真正链接数据库,因为那样东西就更多了,相信学到shiro的人对连接数据库的一 ...
- JQuery easyUi datagrid 中 自定义editor作为列表操作按钮列
转自 http://blog.csdn.net/tianlincao/article/details/7494467 前言 JQuery easyUi datagrid 中 使用datagrid生 ...
- 1130mysql explain中的type列含义和extra列的含义
很多朋友在用mysql进行调优的时候都肯定会用到explain来看select语句的执行情况,这里简单介绍结果中两个列的含义. 1 type列 官方的说法,说这列表示的是"访问类型" ...
- SharePoint 2013 关于自定义显示列表表单的bug
1.在SharePoint 2013中,我们隐藏列表Dispform页面的ListFormWebPart部件,转而使用自定义显示列表表单进行展示,因为这样更容易定制我们需要的显示: 2.之后发现文件夹 ...
- 当 IDENTITY_INSERT 设置为 OFF 时,不能为表中的标识列插入显式值
{"当 IDENTITY_INSERT 设置为 OFF 时,不能向表 'OrderList' 中的标识列插入显式值"} 对于这个异常可以从两个角度来处理:A:数据库执行语句 B: ...
- 浅析在QtWidget中自定义Model
Qt 4推出了一组新的item view类,它们使用model/view结构来管理数据与表示层的关系.这种结构带来的功能上的分离给了开发人员更大的弹性来定制数据项的表示,它也提供一个标准的model接 ...
- 使用POI读取xlsx文件,包含对excel中自定义时间格式的处理
package poi; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundExcepti ...
- AngularJS中自定义有关一个表格的Directive
本篇体验在AngularJS中自定义一个有关表格的Directive.表格的需求包括: ● 表格结构 <table> <thead> <tr> ...
- python---基础知识回顾(十)进程和线程(py2中自定义线程池和py3中的线程池使用)
一:自定义线程池的实现 前戏: 在进行自定义线程池前,先了解下Queue队列 队列中可以存放基础数据类型,也可以存放类,对象等特殊数据类型 from queue import Queue class ...
随机推荐
- 【刷题-LeetCode】222. Count Complete Tree Nodes
Count Complete Tree Nodes Given a complete binary tree, count the number of nodes. Note: Definition ...
- 【解决了一个小问题】golang gin框架中的模板,让模板中的参数不要做HTML转义
代码中使用了类似的方式来向模板填充参数: c.HTML(200, "list.html", gin.H{"data":builder.String()}) 模板 ...
- 一文读懂 HTTP/1HTTP/2HTTP/3
转自 https://zhuanlan.zhihu.com/p/102561034
- 44.Prim算法
public static void main(String[] args) { //测试看看图是否创建ok char[] data = new char[]{'A','B','C','D','E', ...
- golang中字符串、bytes类型切片、16进制字符串之间的转换
func main() { // 字符串转bytes类型 name := "马亚南" fmt.Println(name) // 马亚南 bName := []byte(name) ...
- 开源免费的WordPress个人博客主题推荐
二次元动漫类个人主题 Sakura 功能强大,美观大气,二次元动漫专属 演示地址:https://2heng.xin/theme-sakura/ 开源地址:https://github.com/mas ...
- python变量垃圾回收机制的入门使用
简介: Python是一款高层次的解释性语言:Python对于初学者来说(易于学习)Python有相对较少的关键字,结构简单,和一个明确定义的语法,学习起来更加简单.学习Python的目的就是为了能够 ...
- IDEA导入建立图标类型的包失败
开发安卓app时当我导入下面的包时,显示包名变红,并且包不可用,这可能与你建立的项目类型有关. MPAndroidChart包是建立图标类型的包,需要自己下载并添加进libs目录 解决方案是在libs ...
- 字体替换 re.sub
dic={'hqo3r': '迎', 'hq6ic': '名', 'hq7yw': '头', 'hq1lk': '新', 'hqpe1': '肇'} content=''' 总体hqo3r则,错的注( ...
- 你我都会遇到的需求:如何导出MySQL中的数据~ 简单!实用!
目录 你我都有的需求 方式一:tee 方式二:mysql_use_result 推荐阅读 一.给研发同学看的面试指南 二.MySQL-视频 三.进阶MySQL中间件-视频 四.白日梦的云原生-笔记 五 ...