【问题标题】:PsychoPy exit fullscreen fails with SpyderPsychoPy 退出全屏使用 Spyder 失败
【发布时间】:2016-05-24 21:52:02
【问题描述】:

我正在用 PsychoPy 编写一个实验,但我使用 Spyder2 作为环境(比 Coder 好得多)。

当我将窗口设置为全屏时

from psychopy import core, clock, visual, event
win = visual.Window([800,600], fullscr=True, monitor="testMonitor", units='cm')

我无法正确关闭它。即使我打电话给win.close()core.quit(),屏幕仍然是灰色的。所有文本都消失了,我可以看到我的鼠标光标在变化,这意味着窗口只是一个幽灵。我什至不能CTRL + ALT + DEL,因为屏幕会变黑。我已经成功地在灰色下方找到了控制台并输入了“退出”,这最终有所帮助。

如何正确关闭窗口而不留下灰屏? (一定是刷新窗口的事情吧?)

【问题讨论】:

    标签: python ipython spyder psychopy


    【解决方案1】:

    打开 Spyder 并转到 工具 > 首选项 > 运行。然后勾选“在新的专用 python 控制台中执行”。一旦完成,这将杀死脚本。

    据我所知,Spyder 中用于psychopy 模块的默认“持久”ipython 控制台的问题在于,某些清理仅在解释器关闭时完成。

    【讨论】:

    • 不幸的是 core.quit() 不会阻止该行为的出现。你的第一个技巧虽然有效!谢谢。所以问题似乎是 iPython 控制台
    【解决方案2】:

    我找到了一个解决方法: 无论何时关闭全屏窗口,我都会在此之后启动一个新的非全屏窗口:

    win.close()
    win = visual.Window(fullscr=False)
    win.close()
    

    这使得灰色鬼屏消失,第二个窗口可以正常关闭。

    【讨论】:

    • 有趣!为了尽量减少答案,用win = visual.Window(fullscr=False) 替换第二行就足够了吗?
    猜你喜欢
    • 2020-08-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多