2014-10-09 28 views
9

so come fare una finestra a schermo intero sul display "principale", ma anche quando si sposta la finestra della mia app per un display secondario collegato al mio PC, quando chiamo:Come rendere una finestra a schermo intero in un display secondario con tkinter?

self.master.attributes('-fullscreen', True) 

a tutto schermo che finestra, lo fa nel display "principale" e non in quello secondario (la finestra dell'app scompare dal display secondario e appare istantaneamente in quella "principale", a schermo intero).

Come posso renderlo a schermo intero nel display secondario?

+0

Windows? o qualcos'altro? –

+0

Solo Windows ... Tk() o Toplevel() –

+0

Beh, credo che la mia risposta sia stata un po 'poco chiara @TerryJanReedy. Voglio Windows a schermo intero Tk() o Toplevel(), in Windows SO. –

risposta

4

Questo funziona su Windows 7: Se la seconda larghezza dello schermo e l'altezza sono gli stessi come il primo, è possibile utilizzare WIN1 o la geometria win2 del seguente codice in funzione la sua posizione relativa (leftof o rightof) per avere uno schermo intero in un display secondario:

from Tkinter import * 

def create_win(): 
    def close(): win1.destroy();win2.destroy() 
    win1 = Toplevel() 
    win1.geometry('%dx%d%+d+%d'%(sw,sh,-sw,0)) 
    Button(win1,text="Exit1",command=close).pack() 
    win2 = Toplevel() 
    win2.geometry('%dx%d%+d+%d'%(sw,sh,sw,0)) 
    Button(win2,text="Exit2",command=close).pack() 

root=Tk() 
sw,sh = root.winfo_screenwidth(),root.winfo_screenheight() 
print "screen1:",sw,sh 
w,h = 800,600 
a,b = (sw-w)/2,(sh-h)/2 

Button(root,text="Exit",command=lambda r=root:r.destroy()).pack() 
Button(root,text="Create win2",command=create_win).pack() 

root.geometry('%sx%s+%s+%s'%(w,h,a,b)) 
root.mainloop() 
+0

Ho una soluzione alternativa ma ti meriti un "accettato" e un upvote per questo, poiché potrebbe essere utile per qualcuno. Grazie! –

1

Prova:

from Tkinter import * 

rot = Tk() 


wth,hgh = rot.winfo_screenwidth(),rot.winfo_screenheight() 
#take desktop width and hight (pixel) 
_w,_h = 800,600 #root width and hight 
a,b = (wth-_w)/2,(hgh-_h)/2 #Put root to center of display(Margin_left,Margin_top) 



def spann(): 
    def _exit(): 
     da.destroy() 

    da = Toplevel() 
    da.geometry('%dx%d+%d+%d' % (wth, hgh,0, 0)) 

    Button(da,text="Exit",command=_exit).pack() 
    da.overrideredirect(1) 
    da.focus_set()#Restricted access main menu 




Button(rot,text="Exit",command=lambda rot=rot : rot.destroy()).pack() 


but = Button(rot,text="Show SUB",command=spann) 
but.pack() 


rot.geometry('%sx%s+%s+%s'%(_w,_h,a,b)) 
rot.mainloop() 
""" Geometry pattern 'WxH+a+b' 
     W = Width 
     H = Height 
     a = Margin_left+Margin_Top"""