易语言封装的启动线程是无法传递文本参数的,我们可以为这个要传递的文本申请一个内存地址,把这个地址传递过去,下面通过演示和封装来说明实现过程。
演示传递文本参数
1、创建一个文本型的变量,来存储要传递的文本
2、为这段文本申请内存,返回内存地址
3、把文本参数写到内存
4、启动线程,传递地址。
5、启动的主线程的参数设置为文本型,接受传进来的文本
.版本 2 .支持库 spec .支持库 EThread .局部变量 文本参数, 文本型 .局部变量 传递地址, 整数型 文本参数 = “我是启动线程要传递的文本” 传递地址 = 申请内存 (取文本长度 (文本参数) + 1, 真) 写到内存 (到字节集 (文本参数), 传递地址, ) 启动线程 (&主线程, 传递地址, )
主线程
.版本 2 .子程序 主线程 .参数 文本参数, 文本型 输出调试文本 (文本参数)
封装传递文本参数
.版本 2 .支持库 spec .支持库 EThread .子程序 启动线程_文本, 逻辑型 .参数 子程序, 子程序指针 .参数 文本参数, 文本型 .局部变量 传递地址, 整数型 传递地址 = 申请内存 (取文本长度 (文本参数) + 1, 真) 写到内存 (到字节集 (文本参数), 传递地址, ) 返回 (启动线程 (子程序, 传递地址, ))
调用启动线程_文本
启动线程_文本 (&主线程, “我是启动线程要传递的文本”)