python 命令行UI库---DUI

UI界面的各平台兼容一直是难以实现的问题,各种服务器后台的管理又需要一个简单易懂的图形界面来方便使用...

根据这种思想我开发了一个python实现的库---DUI

DUI库是用纯文本内容创造界面,各平台均能使用,windows效果极佳

附图 DUI-1.0.0测试窗口:

是不是非常酷炫?

后来又增加了几个功能,顺便随手写了个demo,现在DUI是这样的:

不只是一个界面,它还能有更多功能:按钮。比如我们现在输入"y"就能点击当前选中的“开始游戏”按钮:

这样我们开始了猜数游戏。老规矩,从0开始猜:

界面会自动出现一个文字信息,告诉我们不是0,那我们接着猜下去,这次比较幸运,猜到2就成功了,这时我们来到了成功的界面:

简单的猜数游戏界面能如此漂亮,这多亏了我们的DUI库。使用DUI库,获得这样的界面仅需几行优雅的代码:

#!/usr/bin/env python
# -*- coding:utf-8 -*-
#__author__ = "Lettle"
#QQ: 1071445082
#fileName: guess.py

'''
	DUI使用案例: 猜数游戏
		游戏将从0到10随机抽取一个数字, 用户输入数字, 系统会提示是否正确
		游戏有3个界面:主界面、游戏界面、结束界面
	DUI控件使用:
		Frame
		Window * 3
		Listener
		Text
		Button
'''

from DUI import *
from random import randint
def mainW():
	frame.showWindow(0)
def guess():
	an = randint(0,10)
	gameWindow.showWindow()
	while True:
		txt = listen.getText()
		try:
			res = int(txt)
		except:
			continue
		if res == an:
			gameWindow.updateWidget(4, Text())
			frame.addWindow(gameWindow, 1)
			frame.showWindow(2)
			frame.listener.run()
			return
		else:
			gameWindow.updateWidget(4, Text("猜错了!不是"+str(res)))
			frame.addWindow(gameWindow, 1)
			frame.showWindow(1)

frame = Frame()
#主界面
mainWindow = Window("主界面")
mainWindow.addWidget(2, Text("猜数游戏", 1))
mainWindow.addWidget(5, Button("开始游戏", onClick=guess))
mainWindow.addWidget(6, Button("结束游戏", onClick=quit))
frame.addWindow(mainWindow, 0)
#游戏界面
gameWindow = Window("猜数界面")
gameWindow.addWidget(2, Text("猜猜随机出来的是几(0-10)"))
gameWindow.addWidget(4, Text())
frame.addWindow(gameWindow, 1)
#游戏结束界面
overWindow = Window("猜数成功!")
overWindow.addWidget(2, Text("恭喜你猜对了!", 1))
overWindow.addWidget(5, Button("返回主界面", onClick=mainW))
frame.addWindow(overWindow, 2)

#设置监听器
listen = Listener(0)
dict = \
	{
		"quit": quit,
		"w": mainWindow.up,
		"s": mainWindow.down,
		"y": listen.confirm
	}
listen.setDict(dict)
frame.setListener(listen)

#主程序开始
t = time.time()
frame.showWindow(0)
frame.listener.run()

github地址: https://github.com/Python-Lettle/DUI

gitee地址: https://gitee.com/lettle/DUI

python QQ交流群: 540717901

作者QQ: 1071445082

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值