易语言 读取TXT到编辑框

2024年11月02日 21:18
有2个网友回答
网友(1):

.版本 2

.支持库 eAPI

.支持库 shellEx


.程序集 窗口程序集1

.程序集变量 文本, 文本型, , "4"

.程序集变量 文本组, 文本型, , "0"

.程序集变量 字符串, 文本型, , "8"

.程序集变量 注册键, 整数型, , "8"

.程序集变量 计次, 整数型

.程序集变量 计数, 整数型


.子程序 __启动窗口_创建完毕


编辑框1.是否允许多行 = 真

编辑框2.是否允许多行 = 真

编辑框3.是否允许多行 = 真

编辑框1.滚动条 = 2

字符串 = { “A”, “S”, “D”, “W”, “J”, “K”, “U”, “I” }

注册键值 ()

时钟1.时钟周期 = 1000


.子程序 _时钟1_周期事件


文本 [1] = 到文本 (读入文件 (取运行目录 () + “\123.txt”))

.如果真 (文本 [1] ≠ 文本 [2])

    时钟1.时钟周期 = 0

    文本处理 ()

.如果真结束



.子程序 文本处理


文本组 = 分割文本 (文本 [1], #换行符, )

文本 [4] = “”

.变量循环首 (取数组成员数 (文本组), 取数组成员数 (文本组) - 1, -1, 计次)

    .如果 (计次 = 取数组成员数 (文本组))

        文本 [2] = 文本组 [计次]

    .否则

        文本 [3] = 文本组 [计次]

    .如果结束

    文本 [4] = 文本组 [计次] + #换行符 + 文本 [4]

.变量循环尾 ()

编辑框1.加入文本 (#换行符, 文本 [4])

计次 = 倒找文本 (文本 [3], “  ”, , 假) + 1

编辑框2.加入文本 (取文本左边 (文本 [3], 计次), #换行符)

.计次循环首 (取文本长度 (文本 [2]), 计次)

    .计次循环首 (8, 计数)

        .如果真 (到大写 (取文本中间 (文本 [2], 计次, 1)) = 字符串 [计数])

            _启动窗口.获取焦点 ()

            模拟按键 (取代码 (字符串 [计数], 1), , )

            跳出循环 ()

        .如果真结束


    .计次循环尾 ()

.计次循环尾 ()

文本 [2] = 文本 [1]

编辑框3.加入文本 (#换行符)

时钟1.时钟周期 = 1000


.子程序 注册键值


注册键 [1] = 注册热键 (_启动窗口.取窗口句柄 (), 标签1.取窗口句柄 (), 0, #A键)

注册键 [2] = 注册热键 (_启动窗口.取窗口句柄 (), 标签1.取窗口句柄 (), 0, #S键)

注册键 [3] = 注册热键 (_启动窗口.取窗口句柄 (), 标签1.取窗口句柄 (), 0, #D键)

注册键 [4] = 注册热键 (_启动窗口.取窗口句柄 (), 标签1.取窗口句柄 (), 0, #W键)

注册键 [5] = 注册热键 (_启动窗口.取窗口句柄 (), 标签1.取窗口句柄 (), 0, #J键)

注册键 [6] = 注册热键 (_启动窗口.取窗口句柄 (), 标签1.取窗口句柄 (), 0, #K键)

注册键 [7] = 注册热键 (_启动窗口.取窗口句柄 (), 标签1.取窗口句柄 (), 0, #U键)

注册键 [8] = 注册热键 (_启动窗口.取窗口句柄 (), 标签1.取窗口句柄 (), 0, #I键)


.子程序 _标签1_反馈事件, 整数型

.参数 参数一, 整数型

.参数 参数二, 整数型


.计次循环首 (8, 计次)

    .如果真 (参数一 = 注册键 [计次])

        编辑框3.加入文本 (字符串 [计次])

    .如果真结束


.计次循环尾 ()

--------------------------

有一点小问题,就是123.txt是只取最后连续的两行.第三行是取不到的,如:

AAAAA            2015-09-04 20:40:33

   S

FFFFFF              2015-09-04 19:33:47

      D

网友(2):

没看懂啊................