我可以在没有显示环境的情况下使用tkinter吗?
我在github中找到了Timeline,并在没有显示器(可使用控制台)的环境中运行了它。
我得到下面的错误。
private void listView1_SelectedIndexChanged(object sender, EventArgs e)
{
if (listView1.SelectedItems.Count > 0)
{
var item = listView1.SelectedItems[0];
var img = item.ImageList.Images[item.ImageIndex];
pictureBox1.Image = img;
selected = listView1.SelectedItems[0].SubItems[0].Text;
}
}
我想更改此python代码以使其在没有DISPLAY设置的情况下工作。
因此,当未设置DISPLAY时,我尝试将其更改为不使用tkinter。但是我也必须更改Traceback (most recent call last):
File "./make_timeline.py", line 425, in <module>
timeline = Timeline(filename)
File "./make_timeline.py", line 109, in __init__
self.tk_root = Tkinter.Tk()
File "/usr/lib/python3.4/tkinter/__init__.py", line 1854, in __init__
self.tk = _tkinter.create(screenName, baseName, className, interactive, wantobjects, useTk, sync, use)
_tkinter.TclError: no display name and no $DISPLAY environment variable
,我想知道什么是最好的方法。 get_text_metrics()
如下所示。
get_text_metrics()
如何解决此问题?
答案 0 :(得分:0)
我可以在没有显示环境的情况下使用tkinter吗?
不,您不能。 Tkinter需要显示。它可以是xvfb之类的虚拟显示器,但要tkinter,它必须是有效的X11显示器,或者是Windows和OSX上的等效显示器。