图形界面Aardio

用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写了一个简单的不能再简单的函数。


1

2

def add(a,b):

    return a+b

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


1

2

3

4

5

6

import py3;

var code = string.load("add.py");

py3.exec(code);

py3.exec(code);

__main__ = py3.addModule("__main__"); //创建模块对象 

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


1

2

3

4

5

6

7

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文件即可运行,而无需重新编译。

代码清单:


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

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();

时间: 2024-07-29 07:26:40

图形界面Aardio的相关文章

centos7开机无法进入图形界面,出现sda assuming drive cache write through的一个解决方案

centos7开机无法进入图形界面,出现sda assuming drive cache write through.no valid rapl domains found in package之类信息. 这个问题是我在VMware里面操作出现的,原因是我在使用虚拟机和实体机之间文件共享功能时,centos系统无法出现hgfs文件夹, 为了解决hgfs的不出现问题,我参考了如下帖子: http://blog.csdn.net/cindy_cheng/article/details/5045697

CentOS设置默认启动命令行(不启动图形界面)

CentOS中如何进入图形界面和文字界面,Linux真正的服务器是不会运行图形化界面的,怎么样才能在不卸载桌面的前提下开机直接进入命令界面呢?(我安装的是CentOS 6.5)下面就简单介绍以下: 一.如果要进入图形界面: 1.首先得安装有图形界面,一般为X-window图形界面. 2.启动linux在终端下输入:startx 即可进入X11的图形操作界面. 二.在图形界面还可以在多个界面中进行切换: 在X-window图形操作界面中按"Alt+Ctrl+功能键Fn n=1~6 "就可

CentOS7安装图形界面和修改运行级别

CentOS7系统如果用mini镜像安装或者服务器版本安装,默认是没有安装图形界面的.如果需要额外去安装图形界面,可以手动来安装CentOS Gnome GUI包.然后会总结一下,在CentOS7系统中的系统运行级别的设置以及如何切换. 命令行下安装 Gnome 包 yum?groupinstall?"GNOME?Desktop"?"Graphical?Administration?Tools" 更新系统的默认运行级别 如果你想在系统下次启动的时候自动进入图形界面,

CentOS6.5安装图形界面(Gnome)

因为是以最小化安装的Linux,无法使用图形界面,从网上看到资料,我使用yum安装果然很简单 ------------------------------------------------------------------------------------------------------ 二.安装好后,使用网络安装(如果网络比较快,这个方法简单) yum groupinstall "Desktop" yum groupinstall "X Window System

CentOS 6.2最小化安装后再安装图形界面

在安装CentOS 6.2时发现它没有提示我要怎么安装,而是"自作主张"地给我选择了最小化安装,结果装完之后只有终端界面,因为有时候不得不用图形界面,所以如果没有图形界面也是很麻烦的. 后来通过百度才知道为什么它不让我选了,因为我用的是虚拟机,由于物理机本身配置就不高,所以我就没给虚拟机分配太多内存,而CentOS 6.2会根据你分配的内存大小决定安装方式,具体的界定我也忘记了,好像是512M还是1G,不过没关系,我们可以自己来安装图形界面,下面来说一下怎么安装. 1.yum -y g

java进阶08 GUI图形界面

图形化用户界面(GUI) 简而言之,就是可视化编程. 要想实现可视化界面(窗口),需要用到JFrame类. package Frame; public class JFrame1 { public static void main(String[] args){ UI ui=new UI(); } } 先建一个主函数,而主函数中的操作只有一句代码.这样做,既能直观又方便后期修改. 接下来是UI类的实现 package Frame; import javax.swing.JFrame; publi

kali切换字符界面模式和切换图形界面模式

我也是走了很多弯路,下面把正确的命令写出来,网上的不是说不正确,是linux命令做出了更改 Systemd是一种新的linux系统服务管理器 它替代了init, 直接上命令吧! 切换至字符界面 sudu systemctl set-default multi-user.target 切换至图形界面 sudo systemctlset-default graphical.target 在字符模式下打开图形界面(需要从新输入用户名密码) sudo init 5

切换账户、切换命令行和图形界面

Centos 6.5 Ctrl+Alt+F1   从命令行模式切换到图形界面(不一定) Ctrl+Alt+F2   从命令行模式切换到图形界面(不一定) runlevel 可以看到当前的运行模式 当在图形界面打开终端查看的时候显示的是5(代表图形界面) vim /etc/inittab(显示见下图) Ctrl+C后输入:wq保存并退出 将5改为3后,reboot重启 将已命令行界面启动 切换账户

widows本地-xshell实现远程连接linux服务器图形界面

本地环境远程连接linux图形界面,常用的实现工具有,VNC.Puty.Xshell等,这里我们用的xshell manager: Xmanager简介:Xmanager是一个运行于 Windows平台上的高性能的X Server软件.它能把远端Unix/Linux的桌面无缝地带到你的Windows上,甚至电脑是在内网或防火墙后,也能通过SSH协议安全的运行远端的X应用程序. 特点包括: 可通过Xcongfig工具设置多个Xmanager设置: 支持多用户的Windows终端环境: 支持多个IP