超级列表框可编辑可获取滚动条位置

易语言 2020-02-27 22:21:32

超级列表框可编辑可获取滚动条位置

现行选中项_集 = 超级列表框_集.现行选中项
列表框每行高度 = 23
.如果真 (现行选中项_集 = -1)
返回 ()
.如果真结束
表头高度_局部 = 获取表头高度 ()
' 第二步骤,计算点击的是第几列
鼠标点击所在列数_局部 = -1
.计次循环首 (超级列表框_集.取列数 (), 列数计次_局部)
.如果真 (横向位置_参数 > 列实际总宽度_局部 且 横向位置_参数 < 列实际总宽度_局部 + 超级列表框_集.取列宽 (列数计次_局部 - 1))
鼠标点击所在列数_局部 = 列数计次_局部 - 1
列宽度_局部 = 超级列表框_集.取列宽 (列数计次_局部 - 1)
当前列_集 = 鼠标点击所在列数_局部
跳出循环 ()
.如果真结束
列实际总宽度_局部 = 列实际总宽度_局部 + 超级列表框_集.取列宽 (列数计次_局部 - 1)
.计次循环尾 ()
.如果真 (鼠标点击所在列数_局部 ≠ -1)
隐藏的表项数_局部 = GetItemTop ()
相对表项索引_局部 = 现行选中项_集 - 隐藏的表项数_局部
编辑框横坐标 = 列实际总宽度_局部 + 超级列表框_集.左边 + 3
编辑框纵坐标 = 表头高度_局部 + 相对表项索引_局部 × 列表框每行高度 + 超级列表框_集.顶边 + (相对表项索引_局部 + 1) × 2 + 2
编辑框宽度 = 列宽度_局部
编辑框高度 = 列表框每行高度 + 2
显示编辑框 (编辑框横坐标, 编辑框纵坐标, 编辑框宽度, 编辑框高度)
' 输出调试文本 (鼠标点击所在列数_局部, 列宽度_局部)