首页 > 解决方案 > 在 PySimpleGUI 中选择列表框的单行

问题描述

我的问题很简单,我是 PySimpleGUI 的初学者,我想知道如何更改列表框中文本的颜色,但我只想更改一些特定的行,所以重要的是我可以运行所有列出并选择行​​。有人知道如何做到这一点,我将非常感激。

标签: pythonlistboxpysimplegui

解决方案


为列表框中的项目设置选项所需的 tkinter 代码。

在此处输入图像描述

import PySimpleGUI as sg

sg.theme("DarkBlue")

items = ['USA', 'Mexico', 'Japan', 'Korea', 'UK', 'China', 'France']
asia_index = (2 ,3, 5)

layout = [
    [sg.Listbox(items, size=(10, 7), key='-LISTBOX-')],
]
window = sg.Window('Title', layout, finalize=True)
listbox = window['-LISTBOX-'].Widget
for index in asia_index:
    listbox.itemconfigure(index, bg='green', fg='white')    # set options for item in listbox
while True:
    event, values = window.read()
    if event == sg.WINDOW_CLOSED:
        break
    print(event, values)

window.close()

推荐阅读