您当前的位置:首页 > 电脑百科 > 程序开发 > 框架

PySimpleGUIWeb:是一款简单的Python的Web的GUI框架

时间:2020-06-09 09:35:09  来源:  作者:

1 说明:

=====

1.1 PySimpleGUI

1.1.1 是PySimpleGUI的一个组成包,而PySimpleGUI使用起来非常简单。

1.1.2 本人曾介绍过:《Python3的PySimpleGUI库的介绍、安装、学习》,此处省略。

https://www.toutiao.com/i6776256127760859660/

1.2 PySimpleGUIWeb

1.2.1 A port of PySimpleGUI that runs in a web browser. Utilizes Remi as the GUI framework.

1.2.2 在Web浏览器中运行的PySimpleGUI端口, 采用Remi作GUI框架,非常简单。

1.2.3 是我目前发现学习python的web中适合初学者最简单的Web的GUI框架了。

PySimpleGUIWeb:是一款简单的Python的Web的GUI框架

图片:4.jpeg

2 准备:

=====

2.1 环境:

华为笔记本电脑、深度deepin-linux操作系统、python3.8和微软vscode编辑器。

2.2 安装:

pip install PySimpleGUI
pip install --upgrade PySimpleGUI
pip install pysimpleguiweb  #可能自带安装remi
pip install remi  #可能需要安装

2.3 相关地址:

https://pypi.org/project/PySimpleGUIWeb/
https://github.com/PySimpleGUI/PySimpleGUI
https://github.com/PySimpleGUI/PySimpleGUI/tree/master/PySimpleGUIWeb

3 第一个窗口:

==========

3.1 方法一:非常简单。

#方法一:
import PySimpleGUIWeb as sg
#定义主函数
def main():
    #布局非常简单
    layout = [
        [sg.Text('Hello World')],  #文本显示
        [sg.Input()],              #空白输入框
        #[sg.Combo(['Combo 1']),sg.Combo(['Combo 2']),sg.Combo(['Combo 3']),], #1行显示水平3个
        [sg.Combo(['Combo 1'])],
        [sg.Text('你好 世界!')],   #支持中文
        [sg.InputText('男')], #默认初始内容的输入框
        #[sg.Ok(), sg.Cancel()],  #按钮默认大小
        #size的宽5(个字符串),1(个字符串)
        [sg.Ok(size=(5,1)), sg.Cancel(size=(5,1))],
    ]
    #定义窗口,窗口名称
    window = sg.Window('第一个窗口', layout,)  #支持中文

    while True:  # Event Loop
        event, values = window.read(timeout=0)
        #if event in (None, 'Exit'):
        if event == None and 'Exit':  #与上面相同
            break
    #window.close()  #可要可不要

main()
PySimpleGUIWeb:是一款简单的Python的Web的GUI框架

 

3.2 方法二:这么简单也能启动

#方法二:
import PySimpleGUIWeb as sg
#布局非常简单
layout = [
    [sg.Text('Hello World')],  #文本显示
    [sg.Input()],              #空白输入框
    [sg.Combo(['Combo 1'])],
    [sg.Text('你好 世界!')],   #支持中文
    [sg.InputText('男')], #默认初始内容的输入框
    [sg.Ok(size=(5,1)), sg.Cancel(size=(5,1))],
]
#定义窗口,窗口名称
window = sg.Window('第一个窗口', layout)

while True:
    event, values = window.read(timeout=0)
    if event == None and 'Exit':
        break
PySimpleGUIWeb:是一款简单的Python的Web的GUI框架

 

3.3 方法三:

import PySimpleGUIWeb as sg
#定义主函数
def main():
    #布局
    layout = [
        [sg.Text('Hello World')],  #文本显示
        [sg.Input()],              #空白输入框
        [sg.Combo(['Combo 1'])],
        [sg.Text('你好 世界!')],   #支持中文
        [sg.InputText('男')], #默认初始内容的输入框
        [sg.Ok(size=(5,1)), sg.Cancel(size=(5,1))],
    ]
    #定义窗口,窗口名称
    window = sg.Window('第一个窗口', layout,)

    i = 0
    while True:
        event, values = window.read(timeout=1)
        if event != sg.TIMEOUT_KEY:
            #print(event, values)
            pass
        if event is None:
            break
        i += 1
    window.close()

if __name__ == "__main__":
    main()
#main()

4 网页弹窗:

========

4.1 代码:

# 除了第一个导出模块字里有web三个字母
# 代码其他部分没感觉在写网页代码,而是简单的python代码,超简单
import PySimpleGUIWeb as sg
#省略pack、grid和place布局,超级简单
layout = [
    #注意key的表示方法
    [sg.Text('Your typed chars Appear here:'), sg.Text('', key='_OUTPUT_')],
    [sg.Input('', key='_IN_')],
    [sg.Button('Show'), sg.Button('Exit'), sg.Button('Blank')]
]

window = sg.Window('网页窗口弹窗', layout)

while True:  # Event Loop
    #读取窗口内容
    event, values = window.read()
    #退出定义
    if event in (None, 'Exit'):
        break
        window.close()
    #定义按钮show的功能
    if event == 'Show':
        #网页版弹出框,显示数值values
        sg.popup('一个网页窗口弹窗!', ' You typed ', values['_IN_'])

window.close()

4.2 效果图:

PySimpleGUIWeb:是一款简单的Python的Web的GUI框架

 

5 网页显示图片:代码

#在web中显示指定路径下的图片
import PySimpleGUIWeb as sg
layout = [
    #指定大小,提示,右键显示功能,r在python3中可以省略
    #[sg.Image(filename='/home/xgj/Desktop/PySimpleGUIWeb/4.jpeg',size=(400,400),tooltip='阳光灿烂',right_click_menu=True)],
    [sg.Image(filename=r'/home/xgj/Desktop/PySimpleGUIWeb/4.jpeg')],
]
#定义窗口,窗口名称和布局
window = sg.Window('图片显示窗口', layout)  #支持中文
# Event Loop
while True:  
    event, values = window.read(timeout=0)
    if event == None and 'Exit':  #与上面相同
        break
window.close()

自己整理并分享出来,喜欢的就点赞、转发和收藏。



Tags:PySimpleGUIWeb   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,如有任何标注错误或版权侵犯请与我们联系(Email:2595517585@qq.com),我们将及时更正、删除,谢谢。
▌相关推荐
1 说明:=====1.1 PySimpleGUI1.1.1 是PySimpleGUI的一个组成包,而PySimpleGUI使用起来非常简单。1.1.2 本人曾介绍过:《python3的PySimpleGUI库的介绍、安装、学习》,此处省略。...【详细内容】
2020-06-09  Tags: PySimpleGUIWeb  点击:(1841)  评论:(0)  加入收藏
▌简易百科推荐
近日只是为了想尽办法为 Flask 实现 Swagger UI 文档功能,基本上要让 Flask 配合 Flasgger, 所以写了篇 Flask 应用集成 Swagger UI 。然而不断的 Google 过程中偶然间发现了...【详细内容】
2021-12-23  Python阿杰    Tags:FastAPI   点击:(6)  评论:(0)  加入收藏
文章目录1、Quartz1.1 引入依赖<dependency> <groupId>org.quartz-scheduler</groupId> <artifactId>quartz</artifactId> <version>2.3.2</version></dependency>...【详细内容】
2021-12-22  java老人头    Tags:框架   点击:(12)  评论:(0)  加入收藏
今天来梳理下 Spring 的整体脉络啦,为后面的文章做个铺垫~后面几篇文章应该会讲讲这些内容啦 Spring AOP 插件 (了好久都忘了 ) 分享下 4ye 在项目中利用 AOP + MybatisPlus 对...【详细内容】
2021-12-07  Java4ye    Tags:Spring   点击:(14)  评论:(0)  加入收藏
&emsp;前面通过入门案例介绍,我们发现在SpringSecurity中如果我们没有使用自定义的登录界面,那么SpringSecurity会给我们提供一个系统登录界面。但真实项目中我们一般都会使用...【详细内容】
2021-12-06  波哥带你学Java    Tags:SpringSecurity   点击:(18)  评论:(0)  加入收藏
React 简介 React 基本使用<div id="test"></div><script type="text/javascript" src="../js/react.development.js"></script><script type="text/javascript" src="../js...【详细内容】
2021-11-30  清闲的帆船先生    Tags:框架   点击:(19)  评论:(0)  加入收藏
流水线(Pipeline)是把一个重复的过程分解为若干个子过程,使每个子过程与其他子过程并行进行的技术。本文主要介绍了诞生于云原生时代的流水线框架 Argo。 什么是流水线?在计算机...【详细内容】
2021-11-30  叼着猫的鱼    Tags:框架   点击:(21)  评论:(0)  加入收藏
TKinterThinter 是标准的python包,你可以在linx,macos,windows上使用它,你不需要安装它,因为它是python自带的扩展包。 它采用TCL的控制接口,你可以非常方便地写出图形界面,如...【详细内容】
2021-11-30    梦回故里归来  Tags:框架   点击:(27)  评论:(0)  加入收藏
前言项目中的配置文件会有密码的存在,例如数据库的密码、邮箱的密码、FTP的密码等。配置的密码以明文的方式暴露,并不是一种安全的方式,特别是大型项目的生产环境中,因为配置文...【详细内容】
2021-11-17  充满元气的java爱好者  博客园  Tags:SpringBoot   点击:(25)  评论:(0)  加入收藏
一、搭建环境1、创建数据库表和表结构create table account(id INT identity(1,1) primary key,name varchar(20),[money] DECIMAL2、创建maven的工程SSM,在pom.xml文件引入...【详细内容】
2021-11-11  AT小白在线中  搜狐号  Tags:开发框架   点击:(29)  评论:(0)  加入收藏
SpringBoot开发的物联网通信平台系统项目功能模块 功能 说明 MQTT 1.SSL支持 2.集群化部署时暂不支持retain&will类型消 UDP ...【详细内容】
2021-11-05  小程序建站    Tags:SpringBoot   点击:(56)  评论:(0)  加入收藏
相关文章
    无相关信息
最新更新
栏目热门
栏目头条