Python WebGUI

Python GUI开发的新选择:

传统的GUI框架开发,如pyqt6,pyside6等框架,太死板,缺乏可定制性,相关依赖又缺失(如浏览器引擎)

页面的交互效果又太少,无法响应式开发,项目打包太大,无法 快速跨平台。

新的解决方法:

网页: 网页很常见,只需要写好页面和逻辑交互,剩下的交给浏览器去渲染即可,

强大的CSS可以做很精美的样式,javascripts可以辅助构成强大的交互,Html可以选择模块化开发,

一个html就是一个模块,一个页面.页面可以多成嵌套

只需要写好web项目,然后由webgui去接管即可,启动应用就打开应用窗口!

from flask import Flask,render_template

app = Flask(__name__)

# 待补充的代码 (flask)

@app.route('/')

def page():

return render_template('页面.html') # 要渲染的应用程序 网页页面

1.使用Flaskwebgui

from flaskwebgui import FlaskUI

# 由flaskwebgui 接管flask项目

ui = FlaskUI(

app=app,

server="flask",

width=940,

height=640,

port=5000,

).run()

if __name__ == '__main__':

ui.run()

2.使用pywebview

from multiprocessing import Process

import webview

def intel(): # 只需要把flask应用的项目 url放入即可

webview.create_window("pywebview", url="http://127.0.0.1:5000", width=1200,height=800)

webview.start()

if __name__ == '__main__':

pipeline = Process(target=intel)

pipeline.start()

app.run(host="0.0.0.0",port=5000)

比较

flaskwebgui 可用选择渲染的浏览器 缺点(宽高单位是像素,不是电脑的尺寸,flask不能设置host,debug, 程序关闭,窗口还在)

pywebview 使用自带浏览器渲染 优点(解决以上问题) 缺点(不能自定义浏览器路径)

性能强劲的Web Gui开发推荐

1. 项目总体 sanic(异步高性能web构建) + pywebview(webgui渲染)

2. 优化 IO操作多使用异步去处理 (asyncio风格)

推荐文章

评论可见,请评论后查看内容,谢谢!!!评论后请刷新页面。