请懂得易语言的师兄进来一下

来源:百度知道 编辑:UC知道 时间:2024/06/17 20:27:29
小弟刚开始学易语言,对易语言不怎么了解
小弟想自己编写一个聊天机器人,但不知怎么做
小弟的编程思路就是当编辑框1(就是对话输入框)内容包含某某字,按键1(发送按键)被点击,然后画板1(对话输出显示框)就会显示你预定的句子!
以下是小弟写的程序代码,但编辑框1内容不管是什么,画板都显示“4”(即机器人说的话)

.子程序 _发送_被单击
.局部变量 容器2, 文本型
.局部变量 容器1, 文本型
.局部变量 容器3, 文本型
.局部变量 容器4, 文本型
.局部变量 容器5, 文本型

容器2 = 对话输入框.内容
容器1 = _启动窗口.昵称编辑框.内容 + “:”
容器3 = _启动窗口.机器人名.内容 + “:”
.如果 (对话输入框.数据源 = “ 1”)

.否则
容器4 = “2”
.如果结束

.如果 (对话输入框.数据源 = “ 3”)

.否则
容器4 = “4”
.如果结束
画板1.滚动写行 (容器3 + 容器4)
画板1.滚动写行 (容器1 + 容器2)

对话输入框.内容 = “ ”

请帮我想想写,谢谢了
小弟还有一条思路,假如编辑框1的内容等于某某字的时候,当按键1被点击,程序会在一个文本文件里搜索并判断选择那一句来显示在画板1上作为机器人的回答
还有一个问题,就是画板没有滚动条,既是代表不能看之前的聊天记录,请问有什么办法解决此问题
请说一下方法,谢谢

首先我推荐你不要用容器1容器2容器3什么的,这样程序的可读性会下降。易语言有没有保留字,也没有说不能输入中文字符,你为什么不用中文容器名呢?

容器2是说的话,容器4是机器人说的话。
你就这么写:
.如果 (容器2 = “说的话”)
容器2 = “回答的话”
.否则
' 继续进行如果判断
.如果结束

用寻找文本命令判断编辑框1.内容吧,然后有关键字且按键1被点击的时候,就输出指定的语句,也可以随机输出所有符合条件的语句。

后面的问题等待高人解决。

为什么要用画板显示?虽然画板可以显示很多东西..加个滚动条特可以模拟滚动..单色用起来很麻烦...如果不用颜色表情的,用普通的编辑框就可以了,如果要颜色的,可以用超级编辑框,如果要显示表情的,可以同云归天鸟大大的丰富文本框,但是这个好像要收费的...

可以这么写:

.版本 2

.如果(寻找文本 (编辑框1.内容, 指定文本, , 真)≠-1) '-1就是找不到
画板1.滚动写行 (你想写出的内容) '写出内容
.否则

.如果结束