栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

【GUI】Python图形界面(三)

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

【GUI】Python图形界面(三)

Python图形界面 十五、列表元素的设定方法 1. 列表元素的书写方法
list = ['python', 'java', 'c++', 'php', 'html']
sg.Listbox(list)
sg.LB(list)
2. 按键元素的设定方法
sg.LB(list, size=(None, None))
import PySimpleGUI as sg

list = ['python', 'java', 'c++', 'php', 'html']

layout = [
             [sg.LB(list,
                    default_values=None,  # 默认选中的值或者列表
                    key='-LB',  # 元素的唯一标识符
                    select_mode=None,  # 选择模式,有效值包含如下4种。
                    # single,单选,更换时点击选择
                    # multiple,可以多选,逐一点击选择
                    # browse, 单选,鼠标按住也可以更换选择
                    # extended,可以多选,鼠标按住也可以扩展选择
                    enable_events=False,  # 元素的事件属性
                    # 如果设定为 True,元素列表项目被选中时会发生事件
                    bind_return_key=False,  # 绑定回车键
                    # 如果设定为True,回车键被按下时相当于此元素被点击
                    size=(30, 6),  # 字符宽度,行高
                    disabled=False,  # 元素是否禁用
                    auto_size_text=None,  # 如果为True,元素自动根据内容大小调整
                    font=None,  # 设置字体名称或者大小
                    no_scrollbar=False,  # 如果为True,则没有滚动条
                    background_color=None,  # 背景颜色
                    text_color=None,  # 字体颜色设定
                    pad=None,  # 元素间隔设定
                    tooltip=None, # 悬浮文本
                    right_click_menu=None, # 右击调出菜单
                    visible=True # 元素可见状态设定
                    )]
         ],

# 创建窗口
window = sg.Window('Python GUI', layout)

# 事件循环
while True:
    event, values = window.read()  # 窗口的读取,有两个返回值(1.事件,2.值)
    print(event)
    if event == None:  # 窗口关闭事件
        break
# 关闭窗口
window.close()
十六、列表元素的更新方法 1. 列表元素的更新方法
window[key].update()
window[key].Update() 
2. 参数
values = None
disabled = None # 更新元素是否禁用
set_to_index = None # 高亮显示设定的索引
# 注意,单击只是高亮显示,并未选中。双击才是高亮显示+选中
# 单击获取值时,不用values(key),而是window[key].get()
scroll_to_index = None # 将设定的索引调到要显示第一行
select_mode = None # 更新元素的选择模式
visible = None # 更新元素的可见状态
十七、在窗口上调用字典里面的键和值
import PySimpleGUI as sg
dict = {'杨幂':'python', '赵丽颖':'java', '刘诗诗':'php', '郭敬明':'html'}
list = []
for i in dict:
    list.append(i)
layout = [
    [sg.LB(list, key='-LB-', size=(30,6), enable_events=True)],
    [sg.T('语言'), sg.In(key='-YY-',size=(25))]
]
# 创建窗口
window = sg.Window('Python GUI', layout)

# 事件循环
while True:
    event, values = window.read()  # 窗口的读取,有两个返回值(1.事件,2.值)
    print(event)
    if event == None:   # 窗口关闭事件
        break
    if event == '-LB-':
        window['-YY-'].update(dict[values['-LB-'][0]])
# 关闭窗口
window.close()

十八、下拉菜单的设定方法
sg.Combo()
sg.InputCombo()
sg.DropDown()
sg.Drop()
  • Combo 和 Listbox 最大的区别在于,可以输入,但是不能多选。Listbox 取得的值是存放在类别里面,但是 Combo 取得的值是对象本身。
import PySimpleGUI as sg

list = ['python', 'java', 'c++', 'php', 'html']

layout = [
             [sg.Drop(list,
                      default_value=None,  # 默认选中的值或者列表
                      key='-LB',  # 元素的唯一标识符
                      size=(30, 6),  # 字符宽度,行高
                      auto_size_text=None,  # 如果为True,元素自动根据内容大小调整
                      background_color=None,  # 背景颜色
                      text_color=None,  # 字体颜色设定
                      enable_events=False,  # 元素事件属性,如果设定为True,当元素被选中时,会发生一个事件
                      disabled=False,  # 元素禁用状态设定
                      pad=None,  # 元素间隔设定
                      tooltip=None,  # 悬浮文本
                      readonly=False,  # 元素只读属性,只能选择,不能输入内容
                      font=None,  # 元素字体名称或者大小设定
                      visible=True  # 元素可见状态设定
                      )]
         ],

# 创建窗口
window = sg.Window('Python GUI', layout)

# 事件循环
while True:
    event, values = window.read()  # 窗口的读取,有两个返回值(1.事件,2.值)
    print(event)
    if event == None:  # 窗口关闭事件
        break
# 关闭窗口
window.close()
十九、下拉菜单的更新方法及小练习 1. 下拉菜单的更新方法
window[key].update()
window[key].Update() 
2. 下拉菜单可更新的属性
value=None,  # 更新默认选中的选项
values=None,  # 更新显示的所有下拉菜单文本
set_to_index=None, # 高亮显示设定的索引的文本
disabled=None,  # 更新元素的禁用状态
readonly=None,  # 更新元素是否只读
font=None,  # 更新元素的字体名称或者大小
visible=None  # 定义元素为不可见
import PySimpleGUI as sg
dict = {'杨幂':'python', '赵丽颖':'java', '刘诗诗':'php', '郭敬明':'html'}
list = []
for i in dict:
    list.append(i)
layout = [
    [sg.Combo(list,key='-LB-', size=(30,6), enable_events=True)],
    [sg.T('语言'), sg.In(key='-YY-',size=(25))]
]
# 创建窗口
window = sg.Window('Python GUI', layout)

# 事件循环
while True:
    event, values = window.read()  # 窗口的读取,有两个返回值(1.事件,2.值)
    print(event)
    if event == None:   # 窗口关闭事件
        break
    if event == '-LB-':
        window['-YY-'].update(dict[values['-LB-']])
# 关闭窗口
window.close()
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/979814.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号