python—pysimplegui中的弹出窗口,用于显示对象列表,然后将选定对象放置在输入框中

amrnrhlw  于 2021-08-20  发布在  Java
关注(0)|答案(0)|浏览(329)

我正在尝试创建一个弹出窗口,按下选择按钮时会触发该弹出窗口。它应该显示特定excel工作表中的一列,用户可以选择条目,这将填充策略输入框。
我有以下代码:

import PySimpleGUI as sg
import pandas as pd

columns = ["STRATEGY", "FOR_SHOW"]
param = (20,3) # size of the main window

df_strategies = pd.read_excel(r'path/Strategies.xlsx', 'Strategies')

def GUI(df_strategies):
    sg.theme('Dark Brown 1')
    listing = [sg.Text(u, size = param) for u in columns]
    core = [
    sg.Input(size = param, key='STRATEGY'),
    sg.Listbox(list(df_strategies['STRATEGIES ']), size=(20,2), enable_events=False)
    ]

    mesh = [[x,y] for (x,y) in list(zip(listing, core))]
    layout =[[sg.Button("SEND")]]+ mesh
    mesh[0].append(sg.Button('SELECTION'))
    window = sg.Window('GUI', layout, font='Courier 12').Finalize()
    while True:
        event, values = window.read()
        if event == sg.WINDOW_CLOSED:
            break
        elif event == "SEND":
            break
        elif event == 'SELECTION':
            sg.popup_scrolled(list(df_strategies['STRATEGIES ']))

        else:
            print("OVER")
    window.close()
GUI(df_strategies)

不幸的是,这个sg.popup_滚动只显示文本本身,没有实际选择的选项。
本质上,我试图创建一些与for_show列表框非常相似的东西,除了它显示在弹出窗口中,并且所选条目填充策略输入框。

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题