以编程方式触发 PySimpleGUI 中的事件
Programmatically trigger an event in PySimplGUI
如何使用 PySimpleGUI
以编程方式触发事件?
例如,下面示例中的 "Show"
事件与单击 "Show"
按钮相关联。有没有办法在不实际单击按钮的情况下以编程方式触发 "Show"
事件?目标是通过单击另一个按钮来自动单击一系列按钮并填充文本框,就像浏览器自动填充一样。
import PySimpleGUI as sg
sg.theme("BluePurple")
layout = [
[sg.Text("Your typed chars appear here:"), sg.Text(size=(15, 1), key="-OUTPUT-")],
[sg.Input(key="-IN-")],
[sg.Button("Show"), sg.Button("Exit")],
]
window = sg.Window("Pattern 2B", layout)
while True: # Event Loop
event, values = window.read()
print(event, values)
if event == sg.WIN_CLOSED or event == "Exit":
break
if event == "Show":
# Update the "output" text element to be the value of "input" element
window["-OUTPUT-"].update(values["-IN-"])
window.close()
来自 martineau 上面的评论:
You can generate a click of the button as if the user clicked on it by calling its click()
method. See the docs.
此外,您可以通过以下方式触发特定事件:
write_event_value(key, value)
如何使用 PySimpleGUI
以编程方式触发事件?
例如,下面示例中的 "Show"
事件与单击 "Show"
按钮相关联。有没有办法在不实际单击按钮的情况下以编程方式触发 "Show"
事件?目标是通过单击另一个按钮来自动单击一系列按钮并填充文本框,就像浏览器自动填充一样。
import PySimpleGUI as sg
sg.theme("BluePurple")
layout = [
[sg.Text("Your typed chars appear here:"), sg.Text(size=(15, 1), key="-OUTPUT-")],
[sg.Input(key="-IN-")],
[sg.Button("Show"), sg.Button("Exit")],
]
window = sg.Window("Pattern 2B", layout)
while True: # Event Loop
event, values = window.read()
print(event, values)
if event == sg.WIN_CLOSED or event == "Exit":
break
if event == "Show":
# Update the "output" text element to be the value of "input" element
window["-OUTPUT-"].update(values["-IN-"])
window.close()
来自 martineau 上面的评论:
You can generate a click of the button as if the user clicked on it by calling its
click()
method. See the docs.
此外,您可以通过以下方式触发特定事件:
write_event_value(key, value)