python常见的gui工具 (python工具app)

1 说明:

1.1 推荐指数:★★★★

1.2 要不是一位网友推荐appJar,我是不知道这个python的GUI工具的。

1.3 appJar自称是Python中GUI的终极工具。

1.4 目前互联网上的appJar的介绍,很少很少,我就发现几个,而且很超级简单,看完我的介绍你就会了。

python的gui快速开发工具,python的gui开发工具

刚开始我以为appJar是java呢,其实是python的库文件

2 感谢我的*今条头日**网友:是他告诉我的。

python的gui快速开发工具,python的gui开发工具

3 appJar介绍:

3.1 官网等相关地址:

#安装:pip install appJar  #仔细注意appJar中J是大写的
#相关地址如下
#https://github.com/jarvisteach/appJar
#http://appjar.info/
#http://appjar.info/pythonLessons/#/

3.2 图

python的gui快速开发工具,python的gui开发工具

他自己说是:python的终极GUI工具,我没用过。

4 label介绍,代码:

#方法一
from appJar import gui
with gui('Lesson 1') as app:
    app.label('Where to begin?')
#方法二
from appJar import gui 
app = gui('Lesson 1') #定义窗口和标题
#app = gui()  #如果是这种,那么窗口的标题就是文件名
app.label('Where to begin?')
app.go()

python的gui快速开发工具,python的gui开发工具

5 可以去官网上找例子,不过很少。

python的gui快速开发工具,python的gui开发工具

6 showSubWindow介绍,代码:

#导出模块
from appJar import gui 
#定义窗口,默认标题
app=gui() #也可以自定义标题
#定义函数打开窗口
def openwin(win):
    app.showSubWindow(win)

'''
#方法一
#官网给2个按钮,我自定义三个,依次类推
#这是主窗口的3个按钮,命令函数类似与command=openwin,简单很多,与tk比。
app.addButtons(["one", "two","three"], openwin)
# this is a pop-up
app.startSubWindow("one", modal=True)
app.addLabel("lone", "SubWindow One")
app.stopSubWindow()
# this is another pop-up
app.startSubWindow("two")
app.addLabel("ltwo", "SubWindow Two")
app.stopSubWindow()
#我自己增加的第3个
app.startSubWindow("three")
app.addLabel("lthree", "SubWindow Three")
app.stopSubWindow()
'''
#-----python思维训练,等同上面------
#方法二
buttonlist=["one", "two","three"]
app.addButtons(buttonlist, openwin)
for i in range(len(buttonlist)):
    app.startSubWindow(buttonlist[i], modal=True)
    app.addLabel("l"+buttonlist[i], "SubWindow"+buttonlist[i])
    app.stopSubWindow()
#-------------------------------
app.go()

效果图

python的gui快速开发工具,python的gui开发工具

7 还能画饼状图,pie.py代码:

from appJar import gui
app = gui()
app.addPieChart("p1", {"apples":50, "oranges":200, "grapes":75,
                        "beef":300, "turkey":150})
app.go()

python的gui快速开发工具,python的gui开发工具

8 倒数计数器,代码:

from appJar import gui
#定义窗口、标题、大小
#一般喜欢定义为:app=gui(),这样也行
win = gui('倒数计数器',geom='600x600') 
count=10
#定义函数pressed功能
def pressed(btnName):
    #声明是全局变量
    global count
    count-=1
    #注意这里是set不是add
    win.setLabel("lb1","Count= "+ str(count))  
    #退出定义
    if count == 0:
        win.after(5, win.stop)  #delay_ms, callback=None
win.addLabel("lb1", "empty")  #定义label标签,名和显示内容(name和text)
win.addButton("PRESS", pressed)  #定义button按钮,按钮显示名和作用(title和func)
win.go()

效果图

python的gui快速开发工具,python的gui开发工具

9 动态随机曲线图,代码

from appJar import gui
from numpy import sin, pi, arange
import random
#获取随机坐标
def getXY():
    x = arange(0.0, 3.0, 0.01)
    y = sin(random.randint(1,10) * pi * x)
    return x,y 
#定义按钮功能函数
def generate(btn):
    #参数:updatePlot(title, t, s, keepLabels=False)
    #注意:s=*getXY(),有一个星号,获取动态坐标值
    app.updatePlot("p1", *getXY())
    #showLabels()  #与下面那个重复,一个够了
#定义函数
def showLabels():
    #图例说明
    axes.legend(['The curve'])
    #坐标值标签定义
    axes.set_xlabel("X Axes")
    axes.set_ylabel("Y Axes")
    #不断刷新
    app.refreshPlot("p1")
#定一个窗口,默认标题名为文件名,默认大小
app = gui()
#画在这个axes图上
axes = app.addPlot("p1", *getXY())
showLabels() #注意上面也有一个,官网给重复了,一个就够了
#定义按钮和command的功能
app.addButton("Generate", generate)
app.go()

效果图

python的gui快速开发工具,python的gui开发工具

10 登录窗口,代码:超级简单

from appJar import gui
#定义窗口、标题名和大小设置
app = gui("Login Form", "800x400")
#窗口背景颜色设置
app.setBg("orange")
#窗口字体大小设置
app.setFont(18)
#定义函数点击
def press(btnName):
    if btnName == "Cancel":
        app.stop()
        return
    #判断输入账号和密码
    if app.getEntry("userEnt") == "appjar":
        if app.getEntry("passEnt") == "123":
            app.infoBox("Success", "Congratulations, you are logged in!")
        else:
            app.errorBox("Failed login", "Invalid password")
    else:
        app.errorBox("Failed login", "Invalid username")
#增加文字标签和输入框,布局,超级简单,省略row=None和column=0
#userLab和passLab是标签名
app.addLabel("userLab", "Username:", 0, 0,)
app.addEntry("userEnt", 0, 1)
app.addLabel("passLab", "Password:", 1, 0)
app.addSecretEntry("passEnt", 1, 1)
#定义按钮,自动生成,按钮名,功能,大小
app.addButtons( ["Submit", "Cancel"], press, colspan=2)
#You can even specify where you want the cursor to be when the GUI starts:
#自己可以指定光标在窗口打开是处于的位置
#app.setFocus("userEnt")  #可要可不要
app.enableEnter(press)
# start the GUI
app.go()

效果图

python的gui快速开发工具,python的gui开发工具

11 addRadioButton介绍,代码:

from appJar import gui
app=gui()
#自动布局,song是名称,自定义,后面是选项,类似于单选题
app.addRadioButton("song", "Killer Queen")
app.addRadioButton("song", "Paradise City")
app.addRadioButton("song", "Parklife")
app.go()

python的gui快速开发工具,python的gui开发工具

是很简单。分享出来,喜欢就收藏和转发。