全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

利用aardio给python编写图形界面

前阵子在用python写一些小程序,写完后就开始思考怎么给python程序配一个图形界面,毕竟控制台实在太丑陋了。

于是百度了下python的图形界面库,眼花缭乱的一整页,拣了几件有“特色”有“噱头”的下载下来做了个demo,仍旧不是很满意,不是下载安装繁琐,就是界面丑陋或者难写难用,文档不齐全。

后来那天,整理电脑文件发现了6年前下载的aatuo(现已更名aardio),顿时一阵惊喜。

先说说aardio,2011年7月的时候,它还叫aauto,那时的自己还醉心于开发桌面应用,VC++(MFC),C#(Winform),Java(Swing),Delphi都被玩了个遍,偶尔网上百度到了aauto,下载下来试用了下,你会被它的IDE“免安装”和“使用友好”感动到,而且最终发布的EXE文件也很小,确实是一个很适合开发小工具或者小应用的语言。后来,aauto更名为aardio,我也有幸成为目睹aardio一路成长的开发者。

当时,我的第一直觉是,aardio应该可以给python写个图形界面,抱着试试的想法,我先用python写了一个简单的不能再简单的函数。

def add(a,b):
 return a+b

然后,仿照以前用C语言写DLL,然后让别的语言调用一样,我参照aardio里面的代码范例,写了这样的代码:

import py3;
 
var code = string.load("add.py");
py3.exec(code);
py3.exec(code);
__main__ = py3.addModule("__main__"); //创建模块对象 

编辑“计算”按钮的单击事件

winform.button.oncommand = function(id,event){
 //winform.msgbox( winform.button.text );
 var n1=tonumber(winform.n1.text);
 var n2=tonumber(winform.n2.text);
 var s = tonumber(__main__.add(n1,n2));
 winform.sum.text=s;
}

最后效果如图:

写在最后的话,我想谈谈python这个脚本语言,我们知道python是解释型语言,所以无需编译就可以运行。所以对于这个aardio界面搭配的python程序,以后如果要修改部分函数,只需要用文本编辑器修改py文件即可运行,而无需重新编译。

代码清单:

import win.ui;
import py3;
/*DSG{{*/
var winform = win.form(text="加法计算器";right=256;bottom=331)
winform.add(
button={cls="button";text="计算";left=72;top=267;right=188;bottom=305;z=1};
equal={cls="static";left=30;top=156;right=237;bottom=181;transparent=1;z=6};
n1={cls="edit";left=72;top=30;right=188;bottom=68;edge=1;font=LOGFONT(h=-29);multiline=1;z=3};
n2={cls="edit";left=72;top=92;right=188;bottom=130;edge=1;font=LOGFONT(h=-29);multiline=1;z=4};
static={cls="static";text="+";left=14;top=91;right=62;bottom=126;align="center";center=1;font=LOGFONT(h=-29);transparent=1;z=5};
sum={cls="edit";left=72;top=204;right=188;bottom=242;edge=1;font=LOGFONT(h=-29);multiline=1;z=2}
)
/*}}*/
 
var code = string.load("add.py");
py3.exec(code);
py3.exec(code);
__main__ = py3.addModule("__main__"); //创建模块对象 
 
var i =0 ;
for(i=1;50;1){
 winform.equal.text=winform.equal.text+"-"
}
 
winform.button.oncommand = function(id,event){
 //winform.msgbox( winform.button.text );
 var n1=tonumber(winform.n1.text);
 var n2=tonumber(winform.n2.text);
 var s = tonumber(__main__.add(n1,n2));
 winform.sum.text=s;
}
 
winform.show()
win.loopMessage();

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# aardio  # python  # 图形界面  # 详解Anconda环境下载python包的教程(图形界面+命令行+pycharm安装)  # python tkinter图形界面代码统计工具(更新)  # python tkinter图形界面代码统计工具  # python自带tkinter库实现棋盘覆盖图形界面  # 用PyQt进行Python图形界面的程序的开发的入门指引  # python图形开发GUI库pyqt5的详细使用方法及各控件的属性与方法  # python图形开发GUI库pyqt5的基本使用方法详解  # python图形开发GUI库wxpython使用方法详解  # Python Tkinter模块 GUI 可视化实例  # 推荐8款常用的Python GUI图形界面开发框架  # 写了  # 是一个  # 我也  # 我想  # 你会  # 那天  # 只需  # 抱着  # 要用  # 如图  # 实在太  # 来做  # 眼花缭乱  # 玩了  # 写在  # 先用  # 能再  # 完后  # 编辑器  # 几件 


相关文章: 电商平台网站制作流程,电商网站如何制作?  如何在Windows 2008云服务器安全搭建网站?  建站之星logo尺寸如何设置最合适?  如何确保FTP站点访问权限与数据传输安全?  如何处理“XML格式不正确”错误 常见XML well-formed问题解决方法  攀枝花网站建设,攀枝花营业执照网上怎么年审?  如何选择长沙网站建站模板?H5响应式与品牌定制哪个更优?  小型网站建站如何选择虚拟主机?  制作证书网站有哪些,全国城建培训中心证书查询官网?  头像制作网站在线制作软件,dw网页背景图像怎么设置?  代刷网站制作软件,别人代刷火车票靠谱吗?  宝塔建站后网页无法访问如何解决?  如何快速登录WAP自助建站平台?  成都响应式网站开发,dw怎么把手机适应页面变成网页?  建站之星安装后如何配置SEO及设计样式?  电商网站制作价格怎么算,网上拍卖流程以及规则?  已有域名和空间,如何快速搭建网站?  潍坊网站制作公司有哪些,潍坊哪家招聘网站好?  广州网站建站公司选择指南:建站流程与SEO优化关键词解析  ,柠檬视频怎样兑换vip?  如何实现建站之星域名转发设置?  建站之星代理如何获取技术支持?  如何在Golang中使用replace替换模块_指定本地或远程路径  制作网站怎么制作,*游戏网站怎么搭建?  建站主机选择指南:服务器配置与SEO优化实战技巧  如何快速上传自定义模板至建站之星?  Python lxml的etree和ElementTree有什么区别  我的世界制作壁纸网站下载,手机怎么换我的世界壁纸?  教学论文网站制作软件有哪些,写论文用什么软件 ?  c++怎么使用类型萃取type_traits_c++ 模板元编程类型判断【方法】  建站主机空间推荐 高性价比配置与快速部署方案解析  相亲简历制作网站推荐大全,新相亲大会主持人小萍萍资料?  建站之星后台密码遗忘或太弱?如何重置与强化?  建站之星伪静态规则如何设置?  宝塔新建站点为何无法访问?如何排查?  如何在腾讯云服务器上快速搭建个人网站?  linux top下的 minerd 木马清除方法  购物网站制作公司有哪些,哪个购物网站比较好?  网站app免费制作软件,能免费看各大网站视频的手机app?  IOS倒计时设置UIButton标题title的抖动问题  文字头像制作网站推荐软件,醒图能自动配文字吗?  公司网站制作价格怎么算,公司办个官网需要多少钱?  南京做网站制作公司,南京哈发网络有限公司,公司怎么样,做网页美工DIV+CSS待遇怎么样?  武汉网站制作费用多少,在武汉武昌,建面100平方左右的房子,想装暖气片,费用大概是多少啊?  网页制作模板网站推荐,网页设计海报之类的素材哪里好?  建站主机功能解析:服务器选择与快速搭建指南  如何选择高效响应式自助建站源码系统?  如何在Windows服务器上快速搭建网站?  南京网站制作费用,南京远驱官方网站?  如何选择可靠的免备案建站服务器? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。