求助!尝试AI写易语言代码问题

查看 88|回复 7
作者:liweiqing   
最近迷了Ai,所以尝试了一下让Ai写易语言代码,伙伴们帮忙完善一下 附上e源码给我研究学习学习
代码如下:

为了实现你的需求,你需要创建一个窗口控件,一个文本框控件,一个按钮控件和一个定时器控件。窗口控件用于显示程序界面,文本框控件用于显示当前时间和金价,按钮控件用于启动或停止定时器控件,定时器控件用于每三秒更新一次文本框控件的内容。
以下是我生成的易语言代码,请你复制到易语言集成开发环境中运行和测试:
[XML] 纯文本查看 复制代码.版本 2
.子程序 _启动事件, 整数型
    窗口_创建(0, 0, 400, 300, , , , , , , , "获取中国黄金的金价")
    文本框_创建(0, 0, 400, 200, , , , , , , "文本框")
    按钮_创建(0, 200, 400, 100, , , , , , "按钮", "开始")
    定时器_创建(0, 3000)
    返回 1
.子程序 _窗口关闭事件, 整数型
    程序_结束()
    返回 1
.子程序 _按钮按下事件, 整数型
    如果 (按钮_取标题("按钮") = "开始")
        定时器_启动(0)
        按钮_置标题("按钮", "停止")
    否则
        定时器_停止(0)
        按钮_置标题("按钮", "开始")
    返回 1
.子程序 _定时器事件, 整数型
    文本框_置内容("文本框", 取当前时间() + 取回车() + 取中国黄金的金价())
    返回 1
.子程序 取当前时间, 文本型
    返回 时间_格式化(时间_取当前(), "%Y年%m月%d日 %H:%M:%S")
.子程序 取中国黄金的金价, 文本型
    .局部变量 网页源码, 文本型
    .局部变量 基础金价, 文本型
    .局部变量 零售价, 文本型
    .局部变量 回收价, 文本型
    网页源码 = 网页操作_取网页源码("https://quote.cngold.org/gjs/swhj_zghj.html", "gb2312")
    基础金价 = 字符串_取出中间文本(网页源码, "[td]基础金价[/td]", "[/td]")
    零售价 = 字符串_取出中间文本(网页源码, "[td]零售价[/td]", "[/td]")
    回收价 = 字符串_取出中间文本(网页源码, "[td]回收价[/td]", "[/td]")
    返回 "中国黄金的基础金价:" + 基础金价 + 取回车() + "中国黄金的零售价:" + 零售价 + 取回车() + "中国黄金的回收价:" + 回收价

金价, 控件

小懒虫丶   

示例下载
说实话,不要生气
你这悬赏额太低了
特意注册了接口
码代码浪费时间也是真的,虽说很简单
我也是菜鸟
json解析还玩不太明白
用的最笨最原始的方法
帮你简单优化了一下
你看一下
看好备注
自己取申请key
我是浮夸   

你问问AI用的什么模块
a2523188267   

请说一下你的AI版本。也想学习e言
liweiqing
OP
  


a2523188267 发表于 2023-9-19 14:05
请说一下你的AI版本。也想学习e言

new bing
liweiqing
OP
  


我是浮夸 发表于 2023-9-19 13:12
你问问AI用的什么模块

new bing生成的
liweiqing
OP
  

[color=]更新后的新代码:大佬呢!!!
[Python] 纯文本查看 复制代码首先,你需要打开易语言开发平台,创建一个新的窗口程序。然后,在窗口设计器中,你需要添加以下控件:
    一个标签控件(Label),用来显示“当前中国黄金价格:”的文字。你可以把它的名称属性设置为“lblTitle”,把它的文本属性设置为“当前中国黄金价格:”。
    一个文本框控件(TextBox),用来显示黄金价格的数值。你可以把它的名称属性设置为“txtPrice”,把它的只读属性设置为“真”,把它的文本属性设置为“0.00”。
    一个按钮控件(Button),用来手动刷新黄金价格。你可以把它的名称属性设置为“btnRefresh”,把它的文本属性设置为“刷新”。
    一个定时器控件(Timer),用来自动刷新黄金价格。你可以把它的名称属性设置为“tmrRefresh”,把它的间隔属性设置为“900000”(毫秒),把它的启用属性设置为“真”。
你可以按照你的喜好调整这些控件的位置和大小,让界面看起来美观一些。😉
接下来,你需要编写程序代码,实现获取和显示黄金价格的功能。你可以在窗口设计器中双击某个控件,就会自动跳转到代码区,并生成相应的事件代码。
首先,你需要定义一个全局变量,用来存储黄金价格的API接口地址。你可以在窗口程序代码区的顶部添加以下代码:
.局部子程序
.全局变量
.常量
    黄金价格API接口地址 文本型 = "[17](https://api.jisuapi.com/gold/shgold?appkey=yourappkey)"
这里我使用了极速数据提供的免费数据接口1,你需要替换其中的yourappkey为你自己申请的appkey。
然后,你需要编写一个子程序,用来从API接口获取黄金价格,并返回一个文本型的结果。你可以在窗口程序代码区的底部添加以下代码:
子程序 获取黄金价格, 返回值 文本型
    .局部变量
        网络操作对象 网络操作型
        网络返回结果 文本型
        JSON对象 JSON对象型
        JSON数组 JSON数组型
        黄金价格 文本型
    .常量
    网络操作对象 = 创建网络操作对象 ()
    网络返回结果 = 网络操作对象.取网页源码 (黄金价格API接口地址, , , , , , , , )
    如果 (网络返回结果 = “”) 则
        返回 “”
    否则
        JSON对象 = 创建JSON对象 ()
        JSON对象.解析 (网络返回结果)
        如果 (JSON对象.取成员值 (“status”) = 0) 则
            JSON数组 = 创建JSON数组 ()
            JSON数组 = JSON对象.取成员值 (“result”)
            黄金价格 = JSON数组.取成员值 (0, “price”)
            返回 黄金价格
        否则
            返回 “”
        .如果结束
    .如果结束
.子程序结束
这里我使用了网络操作对象和JSON对象两个内置模块,用来发送网络请求和解析JSON数据。我只取了返回结果中第一个品种(Au (T+D))的最新价作为黄金价格。
最后,你需要编写两个事件代码,分别是按钮控件的单击事件和定时器控件的计时事件。这两个事件都会调用上面定义的子程序,获取并显示黄金价格。你可以在窗口程序代码区添加以下代码:
事件 btnRefresh.单击 ()
    .局部变量
        黄金价格 文本型
    .常量
    黄金价格 = 获取黄金价格 ()
    如果 (黄金价格 = “”) 则
        消息框 (“获取黄金价格失败,请检查网络或API接口。”)
    否则
        txtPrice.文本 = 黄金价格
    .如果结束
.事件结束
事件 tmrRefresh.计时 ()
    .局部变量
        黄金价格 文本型
    .常量
    黄金价格 = 获取黄金价格 ()
    如果 (黄金价格 = “”) 则
        消息框 (“获取黄金价格失败,请检查网络或API接口。”)
    否则
        txtPrice.文本 = 黄金价格
    .如果结束
.事件结束
liweiqing
OP
  


小懒虫丶 发表于 2023-9-19 12:46
示例下载
说实话,不要生气
你这悬赏额太低了

我默认悬赏的,但是也谢谢你愿意回答我。感激你
您需要登录后才可以回帖 登录 | 立即注册

返回顶部