前阵子在用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图形界面开发框架
# 写了
# 是一个
# 我也
# 我想
# 你会
# 那天
# 只需
# 抱着
# 要用
# 如图
# 实在太
# 来做
# 眼花缭乱
# 玩了
# 写在
# 先用
# 能再
# 完后
# 编辑器
# 几件
相关文章:
制作公司内部网站有哪些,内网如何建网站?
C++如何编写函数模板?(泛型编程入门)
如何在企业微信快速生成手机电脑官网?
建站主机选购指南与交易推荐:核心配置解析
建站主机如何安装配置?新手必看操作指南
Android滚轮选择时间控件使用详解
惠州网站建设制作推广,惠州市华视达文化传媒有限公司怎么样?
香港服务器网站搭建教程-电商部署、配置优化与安全稳定指南
c++如何打印函数堆栈信息_c++ backtrace函数与符号名解析【方法】
详解免费开源的.NET多类型文件解压缩组件SharpZipLib(.NET组件介绍之七)
MySQL查询结果复制到新表的方法(更新、插入)
如何零成本快速生成个人自助网站?
如何通过万网虚拟主机快速搭建网站?
成都响应式网站开发,dw怎么把手机适应页面变成网页?
mc皮肤壁纸制作器,苹果平板怎么设置自己想要的壁纸我的世界?
建站之星安全性能如何?防护体系能否抵御黑客入侵?
网站制作公司,橙子建站是合法的吗?
建站之星后台密码如何安全设置与找回?
建站之家VIP精选网站模板与SEO优化教程整合指南
建站之星伪静态规则如何设置?
广州网站制作的公司,现在专门做网站的公司有没有哪几家是比较好的,性价比高,模板也多的?
建站主机功能解析:服务器选择与快速搭建指南
正规网站制作公司有哪些,目前国内哪家网页网站制作设计公司比较专业靠谱?口碑好?
建站之星导航配置指南:自助建站与SEO优化全解析
在线教育网站制作平台,山西立德教育官网?
linux top下的 minerd 木马清除方法
齐河建站公司:营销型网站建设与SEO优化双核驱动策略
c# await 一个已经完成的Task会发生什么
网站制作壁纸教程视频,电脑壁纸网站?
如何通过主机屋免费建站教程十分钟搭建网站?
专业网站建设制作报价,网页设计制作要考什么证?
如何在西部数码注册域名并快速搭建网站?
已有域名和空间如何搭建网站?
定制建站流程解析:需求评估与SEO优化功能开发指南
如何在腾讯云服务器快速搭建个人网站?
建站之星如何实现网站加密操作?
香港服务器如何优化才能显著提升网站加载速度?
专业商城网站制作公司有哪些,pi商城官网是哪个?
制作门户网站的参考文献在哪,小说网站怎么建立?
建站之星在线客服如何快速接入解答?
C++ static_cast和dynamic_cast区别_C++静态转换与动态类型安全转换
网站代码制作软件有哪些,如何生成自己网站的代码?
国美网站制作流程,国美电器蒸汽鍋怎么用官方网站?
浙江网站制作公司有哪些,浙江栢塑信息技术有限公司定制网站做的怎么样?
建站中国必看指南:CMS建站系统+手机网站搭建核心技巧解析
代刷网站制作软件,别人代刷火车票靠谱吗?
如何确保FTP站点访问权限与数据传输安全?
宿州网站制作公司兴策,安徽省低保查询网站?
如何在云主机上快速搭建多站点网站?
如何配置支付宝与微信支付功能?
*请认真填写需求信息,我们会在24小时内与您取得联系。