问题描述
我的main.py如下:
from tkinter import *
mainWin = Tk()
#widgets are added here.
# Prepare for clean exit on window close.
mainWin.protocol("WM_DELETE_WINDOW",close)
mainWin.mainloop()
当我这样做
sudo python3 main.py
...我在第 2 行收到以下错误:
_tkinter.TclError: no display name and no $disPLAY environment variable
我在 main.py 的第 2 行之后插入了这个,试图让它工作:
if os.environ.get('disPLAY','') == '':
print('no display found. Using :0.0')
os.environ.__setitem__('disPLAY',':0.0')
...但后来我明白了:
_tkinter.TclError: Couldn't connect to display ":0.0"
我也尝试将 main.py 复制到桌面并在桌面上添加一个包含以下内容的 launch.command 文件:
#!bin/bash
sudo python3 main.py
...然后做了...
chmod u+x /home/pi/Desktop/launch.command
然后我双击桌面上的 launch.command 图标,它将文件打开到记事本附件中,而不是提供执行文件的选项。
我正在尝试构建一个最终通过自动启动运行的 GUI,但现在只需要在 raspbian 桌面前面的屏幕上显示窗口,这样我就可以看到我需要做些什么来进一步完善它。
>我是 python3 和 tkinter 的新手,只关注对它们有用的脚本和 YouTube 视频,没有任何这些明显的切线错误。任何有关让 mainWin 显示在 DSI 屏幕上的帮助将不胜感激。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)