如何使用pysimplegui添加控制台以在布局字段中显示结果

问题描述

我想使用 CANNY 和 FLANN 框架比较两个图像。我的图像比较代码已准备就绪,但我希望在 pysimplegui 的以下代码中在用户输入的同一窗口中的控制台或空间中显示结果。

import PySimpleGUI as sg

sg.theme('Light Blue 2')

layout = [[sg.Text('Enter 2 files to comare')],[sg.Text('File 1',size=(8,1)),sg.input(),sg.Filebrowse()],[sg.Text('File 2',[sg.Submit(),sg.Cancel()]]

window = sg.Window('File Compare',layout)

event,values = window.read()
window.close()

enter image description here

解决方法

如果您需要显示比较代码的结果,您应该能够声明一个等于结果的变量并像这样打印变量:

df_data = pd.DataFrame({'ID':['x','y','x','z'],'col1':['1','','2','f'],'col2':['5','5','5'],'col3':['','1','3','5']})
df_data_req = pd.DataFrame({'ID':['x','col1':['X','X'],'col2':['X','X','col3':['X','']})

如果您需要在与用户输入相同的窗口中显示结果,则需要在其中一行中使用 sg.Output() 来创建一个框,该框将显示您要告诉 python 的所有内容在控制台打印。对于我的示例,我将制作布局的第四行:

my_variable = results
print(my_variable)

这将在您的“取消”按钮右侧显示一个输出框。