0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

AWTK 开源串口屏开发(12) - 记事本应用

ZLG致远电子 2024-03-09 08:23 次阅读

记事本是一个常用的应用程序,在 AWTK 串口屏中,内置文件模型和文件选择对话框,无需编写一行传统的代码,即可实现一个简单的记事本应用程序。记事本是一个很常用的应用,用来编辑和查看文本文件非常方便。在传统的的串口屏中,开发一个记事本应用,即使可能,也是非常麻烦的事情。在 AWTK 串口屏中,内置文件模型和文件选择对话框,实现一个简单的记事本,不需要编写代码,设计好界面,添加绑定规则就好了,非常简单。


1. 功能

不用编写代码,实现记事本应用。

46ae6d7e-ddab-11ee-9118-92fbcf53809c.png

2. 创建项目

从模板创建项目,将 hmi/template_app 拷贝 hmi/notepad 即可。

第一个项目最好不要放到其它目录,因为放到其它目录需要修改配置文件中的路径,等熟悉之后再考虑放到其它目录。路径中也不要中文和空格,避免不必要的麻烦。


3. 制作界面

用 AWStudio 打开上面 notepad 目录下的 project.json 文件。里面有一个空的窗口,做出类似下面的界面。

46bb3b80-ddab-11ee-9118-92fbcf53809c.png

4. 添加绑定规则

4.1 文件名

用 edit 控件显示文件名,将文件名文本属性绑定到filename变量。添加自定义的属性v-data:value,将值设置为{filename}

绑定属性

绑定规则

说明

v-data:value

{filename}

filename 是内置的变量,用于保存文件名。

4.2 文件内容

用 mledit 控件显示文件内容,将文件内容文本属性绑定到content变量。添加自定义的属性v-data:value,将值设置为{content}

绑定属性

绑定规则

说明

v-data:value

{content}

content 是内置的变量,用于保存文件内容。

4.3 打开文件

  • 打开按钮的点击事件绑定到browse命令。添加自定义的属性v-on:click,将值设置为{browse,Args=open(filter=’.txt.c.cpp.md’,title=‘TextFile’)}

绑定属性

绑定规则

说明

v-on:click

{browse, Args=open(filter=’.txt.c.cpp.md’, title=‘Text File’)}

browse 命令是内置的命令,参数 open 用于打开文件选择对话框。

4.4 保存文件

  • 保存按钮的点击事件绑定到save命令。添加自定义的属性v-on:click,将值设置为{save}。

绑定属性

绑定规则

说明

v-on:click

{save}

save 命令是内置的命令,用于保存文件。

4.5 另存为文件

  • 另存为按钮的点击事件绑定到browse命令。添加自定义的属性 v-on:click,将值设置为{browse,Args=saveas(filter=’.txt.c.cpp.md’,title=‘TextFile’)}

绑定属性

绑定规则

说明

v-on:click

{browse, Args=saveas(filter=’.txt.c.cpp.md’, title=‘Text File’)}

browse 命令是内置的命令,参数 saveas 用于打开文件选择对话框。

4.6 重新加载

重新加载按钮的点击事件绑定到reload命令。添加自定义的属性v-on:click,将值设置为{reload}

绑定属性

绑定规则

说明

v-on:click

{reload}

reload 命令是内置的命令,用于重新加载持久化的配置,命令要用英文大括号括起来。

4.7 退出

退出按钮的点击事件绑定到nothing命令。添加自定义的属性v-on:click,将值设置为{nothing,QuitApp=true}

绑定属性

绑定规则

说明

v-on:click

{nothing, QuitApp=true}

nothing 命令是内置的命令,用于什么都不做,QuitApp=true 表示退出应用。

4.8 窗口模型

  • 指定窗口的模型为 file,路径为${app_dir}/test.txt,自动加载文件。

绑定属性

绑定规则

说明

v-model

file(path=${app_dir}/test.txt, auto_load=true)

file 是内置的模型,用于保存文件内容,path 是文件路径,auto_load=true 表示自动加载文件。


5. 初始化数据


6. 描述需要持久化的数据


7. 编译运行

运行 bin 目录下的 demo 程序:

46c69048-ddab-11ee-9118-92fbcf53809c.gif

8. 注意

本项目并没有编写界面相关的代码,AWStudio 在 src/pages 目录下生成了一些代码框架,这些代码并没有用到,可以删除也可以不用管它,但是不能加入编译。

完整示例请参考:demo_notepad。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 开源
    +关注

    关注

    3

    文章

    2986

    浏览量

    41719
  • 串口屏
    +关注

    关注

    8

    文章

    473

    浏览量

    36618
  • awtk
    +关注

    关注

    0

    文章

    24

    浏览量

    169
收藏 人收藏

    评论

    相关推荐

    如何把一台仪器的数据写入一个记事本

    现有一台测温的仪器,如何把温度的数据写入一个记事本中?可不可以大概介绍下,比如串口连接,需要用到哪些模块。谢谢!
    发表于 12-07 21:07

    ISD4004语音记事本

    想用ISD4004芯片和单片机做个语音记事本,大家有什么建议
    发表于 03-15 17:10

    如何读取某路径下所有的记事本文件

    如何读取某路径下所有的记事本文件并将符合要求的文件转存到另一个文件夹如有20个文件,将里面带有a的文件拷到另一文件夹下。
    发表于 02-05 21:27

    介绍AWTK

    ZLG 开源 GUI 引擎 AWTK 1.6 发布一、介绍AWTK全称 Toolkit AnyWhere,是ZLG开发开源 GUI 引擎,
    发表于 08-20 08:09

    AWTK的寓意

    一、介绍AWTK全称Toolkit AnyWhere,是ZLG开发开源GUI引擎,旨在为嵌入式系统、WEB、各种小程序、手机和PC打造的通用GUI引擎,为用户提供一个功能强大、高效可靠、简单易用
    发表于 08-20 08:12

    如何把notepad++配置成一个能编译C代码的记事本

    把notepad++配置成一个能编译C代码的记事本
    的头像 发表于 02-04 15:09 2732次阅读
    如何把notepad++配置成一个能编译C代码的<b class='flag-5'>记事本</b>

    AWTK 开源智能串口屏方案

    AWTK开源智能串口屏方案发布,旨在解决传统串口屏诸多痛点,为用户提供更开放、更易用、更强大的开源串口
    的头像 发表于 12-02 08:24 462次阅读
    <b class='flag-5'>AWTK</b> <b class='flag-5'>开源</b>智能<b class='flag-5'>串口</b>屏方案

    ​【AWTK开源智能串口屏方案】方案介绍和工作原理

    本篇文章介绍一下AWTK开源智能串口屏方案的基本原理和实际使用效果,包括主要特点、应用场景、工作原理以及简单的Demo演示。引言:AWTK-HMI是基于
    的头像 发表于 12-21 08:24 403次阅读
    ​【<b class='flag-5'>AWTK</b><b class='flag-5'>开源</b>智能<b class='flag-5'>串口</b>屏方案】方案介绍和工作原理

    AWTK 串口开发(5) - MCU端 SDK 用法

    AWTK开源智能串口屏,不但开放了串口屏端全部源码,还提供了MCU端SDK,大大加快MCU软件的开发。本介绍一下MCU端SDK在不同平台上的
    的头像 发表于 01-06 08:24 160次阅读
    <b class='flag-5'>AWTK</b> <b class='flag-5'>串口</b>屏<b class='flag-5'>开发</b>(5) - MCU端 SDK 用法

    微软记事本新增ChatGPT-4支持的CoWriter功能

    早先已有相关媒体报道,记事本应用程序源码文件中有多处涉及到ChatGPT的元素,比如以“CoWriterCreditLimitDialog”、“CoWriterDropDownButton”和“CoWriterWaitlistDialog”为前缀的命名方式。
    的头像 发表于 01-10 10:17 213次阅读

    AWTK 开源串口开发(6) - 定时器的用法

    定时器是个常用的功能,AWTK串口屏提供了丰富的定时器函数,用于定时器的启动、停止、暂停、恢复、修改和重置等功能,本文以计时器的例子来介绍定时器的基本用法。定时器也是一个常用的功能,在AWTK
    的头像 发表于 01-13 08:24 163次阅读
    <b class='flag-5'>AWTK</b> <b class='flag-5'>开源</b><b class='flag-5'>串口</b>屏<b class='flag-5'>开发</b>(6) - 定时器的用法

    AWTK开源智能串口屏方案】HMI端程序移植编译及运行

    本篇文章介绍一下AWTK开源智能串口屏方案的串口屏端(即HMI端)的编译运行步骤,并介绍如何将HMI端移植到Linux或STM32平台或RTOS平台,以及如何配置资源文件。引言:
    的头像 发表于 01-18 08:24 294次阅读
    【<b class='flag-5'>AWTK</b><b class='flag-5'>开源</b>智能<b class='flag-5'>串口</b>屏方案】HMI端程序移植编译及运行

    AWTK 开源串口开发(9) - 用户和权限管理

    AWTK串口屏中,内置用户管理和权限控制的模型,无需编码即可实现登录、登出、修改密码、权限控制、创建用户、删除用户等功能,本文介绍一下用户管理和权限控制的基本用法。用户管理和权限控制是一个常用
    的头像 发表于 02-19 12:10 188次阅读
    <b class='flag-5'>AWTK</b> <b class='flag-5'>开源</b><b class='flag-5'>串口</b>屏<b class='flag-5'>开发</b>(9) - 用户和权限管理

    AWTK开源智能串口屏方案】MCU SDK使用与编译运行

    本篇文章将介绍AWTK-HMI中的MCU端开发方法,包括MCUSDK常用API的说明、使用流程及如何编译到Linux和STM32平台。引言:AWTK-HMI是基于AWTK
    的头像 发表于 02-19 12:11 402次阅读
    【<b class='flag-5'>AWTK</b><b class='flag-5'>开源</b>智能<b class='flag-5'>串口</b>屏方案】MCU SDK使用与编译运行

    AWTK开源智能串口屏方案】设计UI界面并上传到串口

    本篇文章将介绍如何使用AWStudio设计串口屏端的UI界面和添加绑定规则,以及怎么将资源文件上传到串口屏端。引言:AWTK-HMI是基于AWTK
    的头像 发表于 02-22 08:24 205次阅读
    【<b class='flag-5'>AWTK</b><b class='flag-5'>开源</b>智能<b class='flag-5'>串口</b>屏方案】设计UI界面并上传到<b class='flag-5'>串口</b>屏