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

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

3天内不再提示

新功能发布 | TSMaster工具箱集成开发环境系列2-工具箱极简开发流程

上海同星智能科技有限公司 2023-04-03 09:42 次阅读

本章节继续介绍TSMaster工具箱集成开发环境系列第二章,基于Python的界面设计。下面我们一起来看看在TSMaster环境下如何进行工具箱的极简开发。

创建空间

Create space /

1. 检查Python环境是否就绪

打开TSMaster,转到工具-系统信息-Python环境设置页面,在这个环境中,用户可以选择默认的Python x86和x64的运行环境,目前TSMaster只有x86版本,x64版本还在开发中,敬请期待。所以基于TSMaster开发的所有的Python程序都是32位,只需要配置好默认的x86运行环境即可。

d0ac81e8-cd47-11ed-ad0d-dac502259ad0.png

我们来到x86的运行环境配置框,默认显示的是TSMaster自带的Python,即3.8.5版本,会显示了完整的程序路径。

d0c4aa70-cd47-11ed-ad0d-dac502259ad0.png

2. 配置框按钮操作

配置框右侧有5个按钮。第1个按钮,选择Python环境,点击后将弹出对话框,在此可以选择另一个Python的路径。比如本机安装了Python 3.9版本,那么就完全可以把TSMaster的Python环境改成3.9版本,不需要总是使用TSMaster自带的Python版本。选择3.9版本后点击打开,可以看到提示,重启TSMaster软件后可使用最新的Python解释器,只要按照提示重启,再次重新打开TSMaster。转到工具-系统信息-Python环境设置,可以看到Python命令行输出,会显示当前的Python的版本号以及编译时间等等详细信息。

d0edfff6-cd47-11ed-ad0d-dac502259ad0.png

第2个按钮,打开Python环境的文件夹,点击后会弹出Python3.9的主文件夹。

d10531bc-cd47-11ed-ad0d-dac502259ad0.png

第3个按钮,它是为了当前的环境重新安装TSMaster的支持库,如果TSMaster更新了新版本,或者是用户意外的删除了package相关的文件,那么需要到这里安装TSMaster的支持库。可以点击试一下,会显示TSMaster支持包已安装。

d11f6ff0-cd47-11ed-ad0d-dac502259ad0.png

第4个按钮,就是恢复默认的Python解释器的路径,点击后可以一键切换到最初的默认状态,就是Python3.8.5。

d13da678-cd47-11ed-ad0d-dac502259ad0.png

第5个按钮,是测试TSMaster的支持库是否工作正常,点击后会打印支持库中的API函数名称等信息。如果提示测试成功,则表明TSMaster支持库可用。

3. 创建工具箱窗口

打开应用,工具箱设计开发环境,第一个页面是现有的工具箱列表,点击工具栏上的“+”号添加按钮,创建新的工具箱。输入工具箱的名称。例如,toolbox,按回车,一个新的工具箱就被创建出来了。

d175352a-cd47-11ed-ad0d-dac502259ad0.png

双击toolbox1这一行,来到控制代码的区域,此代码定义了一个类,名为toolbox1。它继承于TSMaster内部工具箱窗体TSForm。初始化代码只有一行,也就是设置Caption,说明这是一个空的窗体。点击上方的运行,或者F9,就可以启动这段代码,创建一个空的工具箱窗口。

d186981a-cd47-11ed-ad0d-dac502259ad0.png

修改空间属性

Modifying space attribute /

点击工具栏上的窗口按钮,启动界面设计器,我们先实现一个简单的功能。例如点击按钮将窗体的标题栏,修改为Hello World。

d1a7b3c4-cd47-11ed-ad0d-dac502259ad0.png


来到控件页面,选中列表的第一行Button,点击,来到窗体区域,再点击一下就可以创建一个按钮,按钮默认是处于选中状态,按下F11,或者是点击右侧的属性,就会来到该控件的属性选项卡。这个按钮的默认名称是Button1,在这里有个Name,将其改为btnTitle,并将它的Caption改为Set Title。

d1e75dd0-cd47-11ed-ad0d-dac502259ad0.png

如果需要预览效果,可以转到组件窗口的配置选项卡,看到代码生成有两个按钮,第一个仅生成Python代码,第二个是生成代码后同时运行窗口,如果点击第二个按钮,则会关闭当前的编辑器。

生成代码

Generating code/

1. 新增属性设置

主要分两块内容,第一块是init函数,第二块是用户定义的各种来到工具箱的代码设计区域,可以看到空窗体的代码新增了窗口的属性设置,以及按钮的创建和属性设置等等。需要注意的是,夹在两行绿色注释之间的代码是窗体设计器自动生成并且控制的,不推荐用户自行修改,因为任何修改都会被随后的代码生成再次覆盖。

d2073948-cd47-11ed-ad0d-dac502259ad0.png


在这里,推荐大家使用专业的编辑工具在外部进行编辑,在此推荐使用的是VS Code。

2. 编写事件处理函数

首先,在初始化函数中,将按钮点击事件关联到一个事件处理函数。我们可以先在代码中定义出这个函数。例如,在init函数的函数体下方,继续编写def OnSetTitleClick。注意,注意UI事件的第一个参数都是sender,也就是事件触发的源,因此这一类函数一般至少有一个参数。

d22b27d6-cd47-11ed-ad0d-dac502259ad0.png

接着,需要在处理函数中设置self,也就是本窗体的Caption为Hello World,那么这个函数就编写完成。最后只需要将我们刚才的self.btnTitle的OnClick事件关联至OnSetTitleClick,代码就编写完毕了。

d24dc016-cd47-11ed-ad0d-dac502259ad0.png


回到TSMaster中,点击编辑框之后我们会看到文件会刷新到最新的状态,随后我们可以按F9或者点击三角形的启动按钮来运行程序,点击三角形的启动按钮来运行程序,就可以看到窗口的标题栏变成了Hello World,这便是工具箱的极简的设计流程。

工具箱的独立运行功能

A stand-alone function of the toolbox /

我们转到VS Code,直接点击右上方的箭头,此时我们可以先最小化TSMaster,将工作区改为信任,然后点击右上方的运行按钮,可以看到VS Code直接调用了Python,启动了该工具箱。

d26ffd2a-cd47-11ed-ad0d-dac502259ad0.png

此时的工具箱窗体又脱离了TSMaster的主程序而独立运行起来,这就是工具箱窗口的独立形态。这意味着,工具箱窗口代替了TSMaster的主窗口,成为了一个独立的应用程序。TSMaster则在后台运行,为Python窗口提供一切可能的支持,但TSMaster内置的所有功能依然都可以使用。

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

    关注

    0

    文章

    78

    浏览量

    11158
  • 工具箱
    +关注

    关注

    0

    文章

    19

    浏览量

    9432
收藏 人收藏

    评论

    相关推荐

    使用PSoc6在Modus工具箱中创建一个示例应用程序时,终端报错的原因?

    你好, 每当我尝试使用 PSoc6 在 Modus 工具箱中创建一个示例应用程序时,我的终端都会显示以下两个错误。 有人有什么建议吗? 1) make[1]:*** [../mtb_shared
    发表于 03-04 07:01

    TSMaster 2024年1月最新版本,新功能太实用

    、新增TTS机箱模块、新增地图显示模块等。一大波超实用的新功能,一起来看看吧!体验新功能建议您将软件更新至最新版本TSMaster下载链接01工具箱相关更新
    的头像 发表于 02-19 12:12 412次阅读
    <b class='flag-5'>TSMaster</b> 2024年1月最新版本,<b class='flag-5'>新功能</b>太实用

    为什么无法在modustoolbox™工具箱中打开新应用程序?

    我无法在modustoolbox™工具箱中打开新应用程序。 如何解决这个问题?
    发表于 01-31 07:32

    可以在Modus工具箱eclipse中使用DAVE™创建的项目吗?

    我们可以将项目(在 IDE 中创建 DAVE™ )使用 Modus 工具箱 eclipse IDE 吗? 如果是,怎么做? 如果不是,为什么不呢?
    发表于 01-26 06:55

    请问KitProg2是否支持加载使用Modus工具箱构建的程序闪存?

    我明白 KitProg3 或更高版本的工具(例如 需要 miniProg4) 才能调试使用 Modus 工具箱创建的项目。 但是,我想使用 KitProg2(例如 miniProg3) 加载程序闪存
    发表于 01-19 06:29

    在ADAU1761的工具箱库下的部分组件没有Help说明是为什么?

    在ADAU1761的工具箱库下的部分组件没有Help说明,比如MSEnv组件,有没有这部分的资料?
    发表于 11-29 07:20

    如何在TSMaster面板和工具箱中实现多语言切换

    TSMaster软件平台已经提供了多语言的支持,对于软件内部用户二次开发的模块如Panel和工具箱模块,TSMaster也提供了多语言的支持。这一特性让基于
    的头像 发表于 11-11 08:21 324次阅读
    如何在<b class='flag-5'>TSMaster</b>面板和<b class='flag-5'>工具箱</b>中实现多语言切换

    使用雷达工具箱构建雷达信号处理流程

    具体内容包括:使用工具箱节省时间、可视化工具的使用、提高设计保真度和减少开发周期,以及在MATLAB中实现雷达目标检测的性能和精度等。
    发表于 07-04 09:49 442次阅读
    使用雷达<b class='flag-5'>工具箱</b>构建雷达信号处理<b class='flag-5'>流程</b>

    瑞萨 IC 工具箱软件手册

    瑞萨 IC 工具箱软件手册
    发表于 06-30 19:43 0次下载
    瑞萨 IC <b class='flag-5'>工具箱</b>软件手册

    瑞萨 IC 工具箱(RICBox) 软件手册

    瑞萨 IC 工具箱 (RICBox) 软件手册
    发表于 06-30 19:42 0次下载
    瑞萨 IC <b class='flag-5'>工具箱</b>(RICBox) 软件手册

    基于模型的RT1062固件开发方法,在哪里可以找到有关修改此工具箱(我假设它需要更改)的最快方法的指导?

    我正在尝试在我们的产品开发中为 RT1062 评估基于模型的 FW 开发方法(SiL、PiL)。我可以访问 NXP 提供的 Matlab 工具箱。第一个问题是我在哪里可以找到有关修改此工具箱
    发表于 06-08 07:56

    MATLAB自动驾驶工具箱使用

    1. 打开工具箱 MATLAB R2017a及以后的版本才有自动驾驶工具箱。 在MATLAB的APPS中选择AUTOMOTIVE下面的Driving Scenario Designer 也可以命令行
    发表于 06-07 11:40 1次下载
    MATLAB自动驾驶<b class='flag-5'>工具箱</b>使用

    S32K146的基于模型的设计工具箱 - 示例代码生成并闪烁但没有任何反应的原因?

    我已经安装了用于 NXP UCANS32K146 开发板的 NXP“S32K1xx 汽车微处理器系列基于模型的设计工具箱”。 我正在使用简单的示例“gpio_s32k146”,它切换 LED 并读取
    发表于 05-17 06:10

    如何将MC33771C与S32K3XX工具箱一起使用?

    的 MC33772C。我如何使用带有 14 格变体的工具箱?该 IC 在 S32K1 工具箱中,我可以在基于 S32K3 的代码中使用该工具箱的模块吗? 另外,对于环回,我需要 2
    发表于 05-09 08:21

    瑞萨FLASH开发工具箱3.07用户手册

    瑞萨FLASH开发工具箱3.07用户手册
    发表于 05-04 19:45 1次下载
    瑞萨FLASH<b class='flag-5'>开发工具箱</b>3.07用户手册