【发布时间】:2020-03-18 16:16:38
【问题描述】:
我的程序存根如下所示:
import PySimpleGUI as sg
layout = [[sg.Text("Geheime Nachricht eintippen:")],
[sg.Multiline(size=(70,4),key="GEHEIM")],
[sg.Spin([i for i in range(1,26)], initial_value=12, key="SS"), sg.Text("Schlüssel zwischen 1 und 25 wählen")],
[sg.Radio("Codieren:", "RADIO1", key="XX" ,default=True),
sg.Radio("Decodieren:","RADIO1", key="YY")],
[sg.Text("ERGEBNIS:")],
[sg.Multiline(size=(70,4),key="AUSGABE")],
[sg.Button("Weiter"), sg.Button("Ende")]]
window = sg.Window("Geheimcode", layout)
while True: # Ereignisschleife
event, values = window.Read()
geheimertext = values("GEHEIM")
print(values("GEHEIM"))
schluessel = int(values["SS"])
print ("Schlüssel = ", schluessel)
if values["XX"] == True:
codedecode = "C"
print("wir codieren:",codedecode)
else:
codedecode = "D"
print("wir decodieren:",codedecode)
if event is None or event == "Ende":
break
window.Close()
程序行 geheimertext = values("GEHEIM") 给出此错误: TypeError:“dict”对象不可调用 我怀疑多行在字典值中生成字典?
所以我的简单新手问题是如何阅读用 pysimpleGUI 制作的 gui 的多行
【问题讨论】:
-
发生错误是因为您正在使用字典(值)并在其后使用 (),这看起来像一个调用。返回的值是一个字典。打印字典本身,然后确定如何处理它的内容。这将显示从多行元素返回的内容。