递归火山软件开发平台

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 火山 源码 类库

超级列表框问题

查看数: 3337 | 评论数: 3 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2023-6-9 22:07

正文摘要:

如图 案例是官方自带的 超级列表框 选择一行,如果间隔时间稍微长点 始终是第一列进入编辑模式,怎么关闭这种模式。

回复

4463424 发表于 2023-6-11 14:18:34
4463424 发表于 2023-6-11 09:49
如果我只想第二列才能编辑,该怎么弄?
我在单击事件 或 双击事件中用位置判断取出列数,再进行允许编辑  ...

谢谢 ,找到方法了!!!
附例子
---------------------------------------------------------------------------------------------------


<火山程序 类型 = "通常" 版本 = 1 />

包 火山.程序

类 启动类 <公开 基础类 = 窗口程序类>
{
    变量 主窗口对象 <类型 = 我的主窗口>

    方法 启动方法 <公开 类型 = 整数>
    {
        主窗口对象.创建主窗口 ()
        返回 (1)
    }
}

# ===

类 我的主窗口 <基础类 = 窗口 注释 = "样例主窗口" @视窗.布局 = "client_size = \"500, 300\"" 标题 = "我的主窗口">
{
    变量 超级列表框1 <类型 = 超级列表框 折叠2 隐藏值属性 = "0" @视窗.布局 = "id = 101\r\npos = \"36, 19, 346, 256\"" "类型" = 报表列表框
            显示表格线 = 真 报表列 = "0\n-1\n0\n100\na\n0\n-1\n1\n100\nb\n0\n-1\n1\n100\nc\n0\n-1\n1\n100\nd"
            表项 = "0\n-1\n-1\n0\n0\n1\n\n1\n-1\n-1\n0\n0\n2\n\n1\n-1\n-1\n0\n0\n3\n\n1\n-1\n-1\n0\n0\n4\n\n1\n-1\n-1\n0\n0\n5\n\n0\n-1\n-1\n0\n0\n2\n\n1\n-1\n-1\n0\n0\n1\n\n1\n-1\n-1\n0\n0\n2\n\n1\n-1\n-1\n0\n0\n3\n\n1\n-1\n-1\n0\n0\n4\n\n0\n-1\n-1\n0\n0\n3\n\n1\n-1\n-1\n0\n0\n1\n\n1\n-1\n-1\n0\n0\n2\n\n1\n-1\n-1\n0\n0\n3\n\n1\n-1\n-1\n0\n0\n4\n"
            允许编辑 = 真 整行选择 = 真 允许编辑子项目 = 真>

    方法 超级列表框_开始编辑 <接收事件 类型 = 整数 注释 = "  当表项进入标题编辑状态前产生此事件,要产生本事件\"允许编辑\"属性必须"
            注释 = "为真.事件处理方法返回1则不允许进入编辑状态,返回0允许进入." 折叠2>
    参数 来源对象 <类型 = 超级列表框 注释 = "提供事件产生的具体来源对象" 折叠>
    参数 标记值 <类型 = 整数 注释 = "用户调用\"挂接事件\"命令时所提供的\"标记值\"参数值,非此方式挂接事件则本参数值固定为0.">
    参数 表项索引 <类型 = 整数 注释 = "提供即将进入编辑状态的表项的索引位置,从0开始.">
    {
        如果 (来源对象 == 超级列表框1)
        返回 (1)
    }

    方法 超级列表框_开始子项编辑 <接收事件 类型 = 整数 注释 = "  当表项进入标题编辑状态前产生此事件,要产生本事件\"允许编辑子项目\"属性必须"
            注释 = "为真.事件处理方法返回1则不允许进入编辑状态,返回0允许进入.">
    参数 来源对象 <类型 = 超级列表框 注释 = "提供事件产生的具体来源对象">
    参数 标记值 <类型 = 整数 注释 = "用户调用\"挂接事件\"命令时所提供的\"标记值\"参数值,非此方式挂接事件则本参数值固定为0.">
    参数 表项索引 <类型 = 整数 注释 = "提供即将进入编辑状态的表项的索引位置,从0开始.">
    参数 列索引 <类型 = 整数 注释 = "提供即将进入编辑状态的子项的列索引位置,从0开始.">
    {
        如果 (来源对象 == 超级列表框1)
        {
            如果 (列索引 == 2)
            {
                返回 (0)
            }
            否则
            {
                返回 (1)
            }

        }
        返回 (0)
    }
}
4463424 发表于 2023-6-11 09:49:45

如果我只想第二列才能编辑,该怎么弄?
我在单击事件 或 双击事件中用位置判断取出列数,再进行允许编辑 值赋值
但不好使,双击能达到效果,但是两次单击,就只会进入第0列。
创世魂 发表于 2023-6-10 17:45:47
允许编辑=假

QQ|Archiver|手机版|小黑屋|递归火山软件开发平台 ( 鄂ICP备18029190号 )

GMT+8, 2024-11-28 02:30 , Processed in 0.087895 second(s), 22 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表