利用 Aardio 配合 Python 快速开发桌面应用

如何快速开发一个上位机?aardio了解一下 我们的资料仓库下面之前有一位小伙伴留言:杂烩君之前偶然间知道aardio这么一个工具,但没有实际去了解过。本期花点时间来了解、学习一下aardio,看看aardio是不是如这位朋友所说的这是一个不错的工具。 阅读详情

大家好,我是阳哥!

我们都知道 Python 可以用来开发桌面应用,一旦功能开发完成,最后打包的可执行文件体积大,并且使用 Python 开发桌面应用周期相对较长

假如想快速开发一款 PC 端的桌面应用,推荐使用 Aardio + Python 搭配的方式进行开发

1. Aardio 介绍

Aardio 是一款专注于 Windows 桌面端的软件开发,适用于快速开发一些自用的 PC 端桌面工具,并且它支持与 Python、JS、Golang 等主流语言进行混合编程

它是一款免费的开发工具,简单易学,支持多线程,具有轻巧、快速开发的特征

PS:Aardio 仅适用于开发 Windows 桌面应用,不具有跨平台性

官网地址:https://www.aardio.com/

2. 快速入手

首先,从官网下载软件后打开,点击左上角「 新建工程 」,选择「 空白工程 」模板,输入项目名称,点击创建按钮,一个空白工程被创建完成了

PS:Aardio 软件内置了很多界面模板、程序模板,可以根据需求自行选择

70501a96803511e169c2074ef7d3b564.png

然后,从软件左下角的「 界面控件 」中选择 2 个控件,一个静态文本 Label、一个按钮 Button,接着设置控件的位置、大小、属性

控件大小及区域:选择控件后,在中间面板区域,用鼠标左键拖动来设置控件位置、控件大小

控件属性:选中某一个控件后,在软件右侧区域「 属性 」中设置控件的属性

32badecf2f5415cdccc402994e3b72e4.png

双击按钮控件会从「 设计视图 」切换到「 代码视图 」,并在代码中生成按钮的点击监听事件

PS:也可以通过工具栏「 切换 」按钮或快捷键「 Ctrl +U 」切换两种视图

接着,在按钮点击事件中编写代码,使用窗体对象内置的方法 msgbox() 弹出一个提示对话框

import win.ui;
/*DSG{{*/
mainForm = win.form(text="aardio工程8";right=959;bottom=591)
mainForm.add(
button={cls="button";text="弹出 Hello World";left=320;top=120;right=568;bottom=184;z=2};
static={cls="static";text="Hello";left=80;top=120;right=240;bottom=168;notify=1;transparent=1;z=1}
)
/*}}*/

//设置按钮的点击事件
mainForm.button.oncommand = function(id,event){
    //弹出一个提示框
    mainForm.msgbox("Hello World,Arrdio!")
}

mainForm.show();
return win.loopMessage();

最后,点击工具栏中的「 发布」按钮或快捷键 F7 生成可执行包

需要注意的是,如果弹出需要更新 Windows Defender 实时保护排除目录,点击默认按钮即可

a8553467278790930e1ff0c43108a0cc.png

3. 结合 Python

虽然 Aardio 提供了丰富的 API,很多功能可以取代 Python 来直接实现,但是熟练掌握 Python 的小伙伴对于 Aardio 语法可能不太能适应

假设我们用 Python 写了一个简单的爬虫,使用 BeautifulSoup 爬取网页标题

from urllib.request import urlopen
from urllib.error import HTTPError
from bs4 import BeautifulSoup

def getTitle(url):
    """爬虫获取网页标题"""
    try:
        html = urlopen(url)
    except HTTPError as e:
        return None

    try:
        bsObj = BeautifulSoup(html.read(), "html.parser")
        title = bsObj.head.title.string
    except AttributeError as e:
        return None
    return title

下面我们在 Aardio 编写具体的业务逻辑

首先,在 Aardio 中添加 2 个文本框和一个触发按钮

604ffd45cbd409c822b925cb850b1204.png

接着,为按钮设置点击事件调用 Python 脚本

在 Aardio 中调用 Python 包含 4 个步骤

  • 放置 Python 脚本到项目资源文件目录下,即:res 文件夹下

  • 导入 py3 模块,使用 string 中的 load() 函数加载脚本文件

  • 使用 py3 中的 exec() 函数预执行脚本

  • 最后,使用「 py3.main.函数名」的格式来调用具体的函数

import py3;

...
//添加调用函数的路径,string指pycode为字符类型
pyCode = string.load("\res\callpy_pro.py");

//执行pycode
py3.exec(pyCode);

mainForm.btn.oncommand = function(id,event){

    //调用函数,在main中调用函数getTitle()
    var result = py3.main.getTitle(content);

    mainForm.result.text = result;

    //提示弹框
    mainForm.msgbox(result);
}

mainForm.show();
return win.loopMessage();

如果直接运行程序会报错缺少依赖的错误,原因是 Python 脚本中引用了 BS4 的依赖

这时,我们需要先执行发布操作生成可执行文件及 py3 的文件夹

注意:py3 文件夹在安装 py3 依赖的时候自动生成

最后,将 BS4 的依赖目录拷贝到「 /dist/lib/py3/.res/」 目录下

比如

# bs4 依赖目录
C:\Users\xingag\AppData\Local\Programs\Python\Python37\Lib\site-packages\bs4

# bs4放置到的目标文件夹
C:\Users\xingag\Desktop\aardio\software\project\callpy\dist\lib\py3\.res\

运行项目,在输入框中输入一个网址,点击按钮,会将爬取的结果展示到结果输入框,并且弹出一个提示框

PS:由于项目涉及到 Python 外部依赖,分享 EXE 可执行文件时,需要将 lib 文件夹一同压缩打包出去

4. 最后

本篇文章介绍了 Aardio 的基本用法及调用 Python 脚本的具体流程

实际上,Aardio 的功能非常强大,它在文件操作、操作系统、音视频、数据库、网络应用、高级应用控件、自动化等都有对应的 API,大家可以自行拓展

如果你觉得文章还不错,请大家 点赞、分享、留言 下,因为这将是我持续输出更多优质文章的最强动力!

aardio工具提示控件的简单实例 中贴了部分代码,不太完整,我这里贴个完整一点的,可以直接运行。主要就是提示框随着鼠标移动,另外也有列表视图控件的一些基本用法。这是早时候回答群友问题时写的一个tooltip控件的简单实例。 阅读详情

相关推荐

记录aardio和Pythonl联动,为python做界面、做单exe文件的几个知识点

aardio创建python关联程序,外部依赖库(模块)如何安装和调用。

不甜 1689

aardio的优缺点,强烈推荐大家试用一下,可以用它在windows下面写一些小工具

aardio是一种用于Windows平台的脚本编程语言,以及一个功能丰富的集成开发环境(IDE)。它结合了强大的原生Windows API访问能力和简单易学的语法。以下是aardio的一些优缺点。

过客2019 7734

aardio:Windows桌面自动化开发的瑞士军刀,快速构建零依赖工具

在Windows平台自动化开发领域,脚本语言和轻量级开发工具扮演着关键角色。其核心原理在于通过封装系统API和运行时环境,实现快速开发与便捷部署。这类技术的价值在于显著降低开发门槛,让非专业开发者也能高效创建实用工具。典型应用场景包括文件批量处理、系统监控、办公自动化等日常效率提升任务。aardio作为代表性工具,深度融合了【零依赖】和【单文件】发布特性,开发者无需配置复杂环境即可将代码、资源及运行时打包为独立EXE,极大简化了分发流程。其语法融合多范式,并深度集成Windows原生能力,为开发桌面小工具提

weixin_30540691的博客 363

aardio - 小窍门及注意事项收集贴

aardio - 小窍门及注意事项收集贴

光庆的学习笔记 3648

Opus4.7:本地运行的Claude桌面版交互克隆工具

本地大模型客户端是当前AI应用落地的关键形态,其核心挑战在于如何在离线环境下复现云端服务的自然交互体验。流式响应不仅是技术实现,更是人机协作节奏的具象化表达——它依赖毫秒级调度、标点感知延迟与上下文感知的输出节律。Opus4.7通过Tauri+Rust架构实现高保真交互节奏克隆,兼顾低资源占用与强稳定性,使Llama 3.2-3B等轻量模型也能输出具备‘思考感’的响应。该方案适用于隐私敏感场景、UX原型验证及开发者日常AI协作风格固化,代表了桌面端AI交互从功能可用迈向体验可信的重要演进。

congji3817的博客 483

基于树莓派的智能家居安防系统DIY:从传感器到报警的完整实践

物联网技术通过传感器、微控制器和网络通信,实现了物理世界的数字化感知与智能控制。其核心原理在于将各类传感器采集的模拟或数字信号,经由微处理器进行数据处理与逻辑判断,最终通过执行器或网络接口实现自动化响应。这一技术架构在智能家居安防领域价值显著,它使得家庭环境监控从孤立的单品走向了可定制、可集成的系统解决方案。具体到应用场景,通过结合燃气、烟雾、水浸等传感器与树莓派等开源硬件,可以构建一个本地化、高可控性的家庭危险监控中枢。本项目详细阐述了如何利用Python编程、多线程监控以及Telegram Bot等工具

weixin_30520015的博客 379

实用 | 利用 aardio 配合 Python 快速开发桌面应用

我们都知道Python可以用来开发桌面应用,一旦功能开发完成,最后打包的可执行文件体积大,并且使用Python开发桌面应用周期相对较长假如想快速开发一款PC端的桌面应用,推荐使用Aardio+Python搭配的方式进行开发Aardio是一款专注于Windows桌面端的软件开发,适用于快速开发一些自用的PC端桌面工具,并且它支持与Python、JS、Golang等主流语言进行混合编程它是一款免费的开发工具,简单易学,支持多线程,具有轻巧、快速开发的特征PS。......

主要分享测试的学习资源,帮助快速了解测试行业,帮助想转行、进阶、小白成长为高级测试工程师。 3792

Monorepo 实战指南:从协作困境到工程提效的7个关键决策

Monorepo(单体仓库)是一种通过统一代码托管与依赖管理来提升跨团队协作效率的现代工程架构模式。其核心原理在于消除 polyrepo 中因独立发布、版本不一致和人工协调导致的‘协作熵增’,转而依托工具链(如 Nx)实现影响范围自动分析、增量构建与约束驱动开发。技术价值体现在缩短交付周期、降低线上事故率、释放重复运维人力,并支撑中大型团队在高复用率、高频协同场景下的可持续演进。典型应用场景包括中后台系统、SaaS 多租户平台、全栈一体化产品线等。本文聚焦真实落地中的目录分层、工具选型、CI 优化、权限治理

weixin_33911824的博客 496

利用aardio配合Python快速开发桌面应用!不得不说非常实用!

1. 前言 我们都知道 Python 可以用来开发桌面应用,一旦功能开发完成,最后打包的可执行文件体积大,并且使用 Python 开发桌面应用周期相对较长 假如想快速开发一款 PC 端的桌面应用,推荐使用 Aardio + Python 搭配的方式进行开发 2. Aardio 介绍 Aardio 是一款专注于 Windows 桌面端的软件开发,适用于快速开发一些自用的 PC 端桌面工具,并且它支持与 Python、JS、Golang 等主流语言进行混合编程 它是一款免费的开发工具,简单易学..

爬遍所有网站 6212

CANOCO5.0实现冗余分析(RDA)最详细步骤

在地理及生态领域会常使用RDA分析,RDA的实现路径也有很多,今天介绍一下CANOCO软件的实现方法。1.不同样点和环境因子之间夹角是锐角 是正相关,是钝角是负相关。2.夹角越大 说明相关性较小,夹角越小,相关性越大。得有不同的物种或者样点数值,再加上环境因子数据。3.箭头越长 相关性越大。时间调整到2010年。

Along6的博客 1万+

读《认知科学导论》(萨伽德) 总结

1. 作者的写作思路 本书是建立在对心智的理解采用表征与计算的方式。对心智表征-计算的理解方式是与计算机的本质相联系。计算机本质上是一个符号系统,符号系统包含两个部分,一个是符号,另一个是建立在符号上的操作。对心智采用表征-计算的方式理解,很容易与计算机建立起类比关系。同时人们在探索人工智能领域采用表征-计算方式已经取得了无数辉煌的成就,故表征-计算式现在研究的主流方法。 本书的有两个部分组成

xiaoqiangXX的专栏 3450

实用 利用 aardio 配合 Python 快速开发桌面应用_aardio和python

① 2000多本Python电子书(主流和经典的书籍应该都有了)② Python标准库资料(最全中文版)③ 项目源码(四五十个有趣且经典的练手项目及源码)④ Python基础入门、爬虫、web开发、大数据分析方面的视频(适合小白学习)⑤ Python学习路线图(告别不入流的学习)PS:也可以通过工具栏「 切换 」按钮或快捷键「 Ctrl +U 」切换两种视图接着,在按钮点击事件中编写代码,使用窗体对象内置的方法 msgbox() 弹出一个提示对话框。

egregw的博客 922

stm32教程之三重ADC交错采样

ps:本文基于stm32F407ZGT6单片机 stm32F4单片机单通道采集的最大采样率为2.4M,所以有时会难以满足较高频率的采样,于是查阅芯片手册,发现stm32F4支持多重ADC采集,利用每个通道的转换时间,错位采样,从而提高采样率,最大把采样率开到2.4*3=7.2M. (去年初学ADC时研究的,基于cube和HAL库的三重ADC交错采样参考资料不多,我也是研究了一段时间,写下这篇博客希望可以帮助到更多人。) 示意图如下: 以下是官方例子的说明, In this ex...

weixin_52178036的博客 8877

实用 利用 aardio 配合 Python 快速开发桌面应用_aardio和python(1)

然后,从软件左下角的「 界面控件 」中选择 2 个控件,一个静态文本 Label、一个按钮 Button,接着设置控件的位置、大小、属性。首先,从官网下载软件后打开,点击左上角「 新建工程 」,选择「 空白工程 」模板,输入项目名称,点击创建按钮,一个空白工程被创建完成了。双击按钮控件会从「 设计视图 」切换到「 代码视图 」,并在代码中生成按钮的点击监听事件。控件属性:选中某一个控件后,在软件右侧区域「 属性 」中设置控件的属性。最后,使用「 py3.main.函数名」的格式来调用具体的函数。

2401_84563438的博客 1315

优雅谈大模型:“System2”与“System 1”

研究人员探索了三种System 2方法——RaR、S2A 和 BSM,这些方法已经成功提炼到新的LLM,这个新的模型与System 1相比,产生了更好的结果,而且成本低于System 2。然而这种方法是有局限性,只能适用于特定的任务。

鲁班模锤 5155

STM32 cubeMX配置串口重定向

这篇文章主要讲解什么是串口重定向,为什么要串口串口重定向。使用printf函数和上位机通信是非常的方便的。希望大家都能够掌握。

m0_49476241的博客 4572

关于 aardio 开发桌面应用,我有几点要补充的...

点击上方 “AirPython”,选择 “加为星标”第一时间关注 Python 原创干货!1. 前言大家好,我是安果!上一篇文章写到可以通过 aardio 结合 Python 开发桌面应用...

AirPython的博客 1393

C#中通过Mapster实现轻量级高效对象映射器:从零到精通

本文介绍了.NET生态中高性能对象映射库Mapster的完整使用指南。从基础安装(通过NuGet包)到快速入门示例,展示了如何实现简单对象映射。进一步讲解了自定义映射规则、命名不一致属性的处理方式,以及如何在ASP.NET Core中集成Mapster服务。针对复杂场景,详细解析了嵌套对象映射的配置技巧,并提供了性能优化方案(如预编译映射器)和调试技巧(启用调试模式、捕获映射异常)。通过完整的代码实践,帮助开发者高效解决从基础到高级的对象映射需求。

墨夶的博客 742

Python树状图绘制全攻略(从入门到精通的4种神器推荐)

掌握Python树状结构数据可视化,轻松呈现复杂层级关系。本文介绍4种高效工具,涵盖适用场景与核心技巧,助你快速实现专业级树状图绘制,方法实用且易于上手,值得收藏。

FuncFun的博客 1110

vue2学习笔记2-老规矩,从Hello World开始,了解Vue实例和模板

想要把“Hello,World”放置在页面上,首先需要准备一个HTML的块级元素div,来承接内容。

l_q_l的专栏 1258

Claude Code 错误解决方案 API Error: 前缀通用错误

本文分析了Claude Code与Anthropic API通信时出现的通用错误处理问题。当API返回未分类错误时,系统会直接显示"API Error: "前缀的原始错误信息。通过错误链路追踪发现,这是由于未匹配特定错误类型时触发了通用兜底处理逻辑。文章提供了三种解决方案:查看具体错误内容、启用调试日志以及提交问题反馈,并建议用户关注错误码、使用/compact命令处理上下文超限问题。最后强调这些未分类错误是预期行为,用户应通过错误消息中的线索自行排查或反馈开发者。

多媒体编程、网络编程、系统编程、网络安全编程、驱动编程 1349

Python怎样写桌面程序

3.使用wxPython:wxPython是另一个Python的GUI工具包,它基于wxWidgets库,可以创建跨平台的GUI应用程序。它的使用方法比Tkinter和PyQt更复杂,但也可以提供更高级的控件和功能。1.使用Tkinter模块:Tkinter是Python自带的GUI工具包之一,可以使用它来创建基本的GUI界面。2.使用PyQt:PyQt是Python的一个强大的GUI工具包,它基于Qt库,提供了许多高质量的控件和功能。PyQt的使用方法比Tkinter更复杂,但也更强大和灵活。

两天打鱼三天晒网 7995

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

一款不错的工具:aardio

关注+星标公众号,不错过精彩内容来源|嵌入式大杂烩今天为大家分一款活跃了17年的开发工具:aardio。本期主角:aardio aardio属于易用性极强的动态语言,但也是一种混合语言,可以罕见地、非常方便地操作静态类型,因此可以直接调用 C语言、C++ 等等静态语言的 API 接口函数。aardio应用于桌面软件开发。aardio已经发展了 17年 , 一直保持非常活...

strongerHuang 2万+

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

python小游戏:实现飞机大战游戏,回忆儿时经典!

使用pygame实现的另外一块经典射击类游戏,游戏运行非常流畅,有爆炸声音效果。

qq_41314882的博客 421

Python 开发桌面应用居然如此简单

我们都知道 Python 可以用来开发桌面应用,一旦功能开发完成,最后打包的可执行文件体积大,并且使用 Python 开发桌面应用周期相对较长 假如想快速开发一款 PC 端的桌面应用,推荐使用 Aardio + Python 搭配的方式进行开发 1. Aardio介绍 Aardio 是一款专注于 Windows 桌面端的软件开发,适用于快速开发一些自用的 PC端桌面工具,并且它支持与Python、JS、Golang 等主流语言进行混合编程 它是一款免费的开发工具,简单易学,支持多线程,具有轻巧...

SixStar_FL的博客 1万+
上一篇: 10 个疯狂的 Python 项目创意
下一篇: 升级到 MySQL 8.0,Facebook 付出的代价。。
Python数据之道
博客等级 码龄9年 3072粉丝 139原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值