Maison  >  Article  >  développement back-end  >  Comment utiliser aardio pour écrire une interface graphique en Python

Comment utiliser aardio pour écrire une interface graphique en Python

黄舟
黄舟original
2017-08-22 13:26:083700parcourir

Cet article présente principalement en détail la méthode d'utilisation d'aardio pour écrire des interfaces graphiques pour python. Il a une certaine valeur de référence.

J'en ai écrit quelques-uns il y a quelque temps. En écrivant le petit programme, j'ai commencé à réfléchir à la façon d'équiper une interface graphique pour le programme python. Après tout, la console est trop moche.

Alors Baidu a regardé la bibliothèque d'interface graphique de Python. C'était une page éblouissante. J'ai choisi quelques "fonctionnalités" et "gimmicks" et je les ai téléchargés et j'ai fait une démo. Il n'y avait pas de téléchargement et d'installation fastidieux, ce qui signifie que l'interface est moche ou difficile à écrire et à utiliser, et que la documentation est incomplète.

Le lendemain, en fouillant dans mes fichiers informatiques, j'ai trouvé aatuo (maintenant renommé aardio) que j'avais téléchargé il y a 6 ans, et j'ai été soudain agréablement surpris.

Parlons d'abord d'aardio. En juillet 2011, il s'appelait encore aauto. A cette époque, j'étais encore obsédé par le développement d'applications bureautiques, VC++ (MFC), C# (Winform), Java (Swing), Delphi J'y ai joué partout, et parfois j'ai trouvé aauto sur Baidu, je l'ai téléchargé et essayé, vous serez impressionné par son IDE "sans installation" et "convivial à utiliser", et le fichier EXE final publié est également très petit, c'est en effet un langage A très adapté au développement de gadgets ou de petites applications. Plus tard, aauto a été renommé aardio, et j'ai eu la chance d'être un développeur qui a été témoin de la croissance d'aardio.

À cette époque, mon premier instinct était qu'aardio devait être capable d'écrire une interface graphique pour python. Avec l'idée de l'essayer, j'ai d'abord écrit une fonction simple en python qui ne pouvait pas. être plus simple.


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

Ensuite, comme avant, j'ai écrit la DLL en langage C puis je l'ai appelée depuis d'autres langages, je me suis référé à l'exemple de code en aardio et. a écrit comme ceci Code :


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

Modifier l'événement clic du bouton "Calculer"


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;
}

L'effet final est le suivant :

En derniers mots, je veux parler du langage de script python. Nous savons que python est un langage interprété. , il peut donc être exécuté sans compilation. Par conséquent, pour le programme python associé à cette interface aardio, si vous souhaitez modifier certaines fonctions à l'avenir, il vous suffit de modifier le fichier py avec un éditeur de texte pour l'exécuter sans recompiler.

Liste des codes :


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

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn