Hola a todos,
He hecho una pequeña aplicación en python y gtk; y funciona perfecto en linux.
Ahora me ha tocado migrarla a windows y me encuentro con el siguiente problema:
Se trata de plantar una ventana gtk en un 2do o 3er monitor.
para ello, según parece; hay que conseguir el nombre del display, que con las X es sencillo; pero no tengo idea de como hacerlo en windows. el código python (en plan demo) sería algo así:
Código Python:
Ver originalimport gtk
class GUI(object):
def __init__(self):
display1 = gtk.gdk.Display(':1.0')
display0 = gtk.gdk.Display(':0.0')
#display1 = gtk.gdk.Display('0\WinSta0\Default')
screen0 = display0.get_screen(0)
screen1 = display0.get_screen(1)
window0 = gtk.Window()
window0.set_screen(screen0)
window1 = gtk.Window()
window1.set_screen(screen1)
label0 = gtk.Label("Display :0.0")
label1 = gtk.Label("Display :1.0")
window0.add(label0)
window1.add(label1)
window0.fullscreen()
window1.fullscreen()
window0.show_all()
window1.show_all()
self.widget = [display0,display1]
if __name__ == "__main__" :
gui = GUI()
gtk.main()
En linux va bien; es decir, crea una ventana con un label "Display :0:0" en medio en el monitor primario a fullscreen y otra en el monitor 2 con un label "Display :0:1" en medio.
La gdk.Display recibe en el constructor un *gchar display_name o Null (default, monitor primario). Buceando por ahi he sabido que ese nombre para el monitor primario en Windows es '0\WinSta0\Default' (de hecho hay una línea comentada en el código de ejemplo donde lo pone y funciona) pero no tengo idea de como conseguir lo que llaman display_name para los siguientes monitores.
A todos muchas gracias por adelantado por el interés y la ayuda.