2013-02-06 48 views
2

我正在使用pyglet编写心理物理学实验。我正在使用的计算机上连接了两台显示器。它们被配置为两个单独的Xscreens,0和1,分别对应于我的工作站监视器和实验屏幕。我想将pyglet绘制到实验屏幕(Xscreen 1)。pyglet无法在第二台显示器上绘制到窗口

为了测试设置,我编写了一个简单的程序来显示一些文本标签。当我用pyglet.window.Window(screen=workstation_screen)运行程序时,窗口出现在屏幕0上,文本按预期显示。

但是,当我用pyglet.window.Window(screen=experiment_screen)运行程序时,窗口出现在屏幕1上,但没有文字出现。

我很困惑这种行为,我做错了什么?这是pyglet中的一个已知错误?这是X的问题吗?任何意见将不胜感激。

详情:

的Python 2.7.3在Ubuntu 10.04.4 pyglet 1.1.4。

代码:

import pyglet 

display = pyglet.window.get_platform().get_default_display() 
screens = display.get_screens() 

# When I replace 'screens[0]' with 'screens[1]' the aforementioned problem occurs. 
window = pyglet.window.Window(screen=screens[0]) 

label = pyglet.text.Label('draw test',x=window.width/2.0,y=window.width/2.0) 

@window.event 
def on_draw(): 
    window.clear() 
    label.draw() 

pyglet.app.run() 

回答

0

我发现周围的工作在xorg.conf中启用Xinerama的,然后调用window.set_fullscreen(fullscreen=True,screen=experiment_screen)仅第二屏幕上移动和全屏窗口。

但是,我仍然不确定为什么窗口会出现,而不是没有启用Xinerama的文本。

相关问题