我正在尝试使用PySimpleGUI。我尝试运行以下代码(来自https://pysimplegui.readthedocs.io/en/latest/#the-快速游览(:
import PySimpleGUI as sg
event, values = sg.Window('Get filename example', [[sg.Text('Filename')], [sg.Input(), sg.FileBrowse()], [sg.OK(), sg.Cancel()] ]).Read()
这是在一个带有Python 3.7.1和PySimpleGUI版本4.18.0的Windows 7盒子上。
顺便说一句,我认为这两行应该在python命令行中工作。但是,即使我将它们保存为一个文件(没有其他python行,只有换行符和注释(,我也会得到
(Traceback (most recent call last):
File "C:UsersblorfmorlflebinMoveStagedFiles.py", line 15, in <module>
event, values = sg.Window('Get filename example', [[sg.Text('Filename')], [sg.Input(), sg.FileBrowse()], [sg.OK(), sg.Cancel()] ]).Read()
AttributeError: module 'PySimpleGUI' has no attribute 'Window'
在堆栈溢出中搜索类似错误时,所有结果线程都不同。
FWIW,我已经卸载并重新安装了PySimpleGUI。
FWIW2,以下工作正常。
sg.Popup('Hello From PySimpleGUI!', 'This is the shortest GUI program ever!')
有什么想法吗?我听说一些python版本对于PySimpleGUI来说是有问题的,因为tkinter问题。有推荐的版本吗?
我用您提供的两行代码在python 3.6.8和PySimpleGUI 4.18.0中尝试了它,但它对我也不起作用(Kernel死了(。
但是,运行快速教程中的另一个示例(https://pysimplegui.readthedocs.io/en/latest/#the-快速浏览(,它只是以一种更可读的方式提供代码,对我来说很有效:
import PySimpleGUI as sg
sg.theme('Dark Blue 3') # please make your creations colorful
layout = [ [sg.Text('Filename')],
[sg.Input(), sg.FileBrowse()],
[sg.OK(), sg.Cancel()]]
window = sg.Window('Get filename example', layout)
event, values = window.Read()
window.close()
我希望这能帮助
几年前,我第一次安装PySimpleGUI只是为了玩它。听说它只是一个python文件,我就把它放在了一个用于测试代码的文件夹中。
旧版本的PySimpleGUI现在还不能完全发挥作用,因为它缺少Window
、theme
等。我使用pip安装了最新版本。但是,我仍然在同一个文件夹中运行测试代码。因此,当我导入PySimpleGUI时,旧版本领先于新的PySimpleGUI的安装路径。基本上,我正在导入一个我不记得安装在当前工作目录中的旧版本。由于旧版本没有版本变量,我花了一段时间才意识到我没有从操作系统命令行导入pip show PySimpleGUI
报告为安装的版本。令人尴尬的但是,我们吸取了教训。
感谢所有对此帖子作出回应的人。最终,@acw1668的建议让我意识到发生了什么。