Вот… держи изоленту… (из старого анекдота)
#!/usr/bin/python3.4
# -*- coding: utf-8 -*-
import tkinter as tk
import subprocess
num = 5
myfile = '/home/jon/1.MTS'
cmdline='mplayer -vo vaapi -cache 1024 -fps 30 -wid %s %s'
posx = [1, 481, 961, 1441, 1, 481, 961, 1441, 1, 481, 961, 1441, 1, 481, 961, 1441]
posy = [1, 1, 1, 1, 271, 271, 271, 271, 541, 541, 541, 541, 811, 811, 811, 811]
sx = 479
sy = 269
class WinFrame(tk.Toplevel):
def __init__(self):
tk.Toplevel.__init__(self, root)
self.x, self.y = str(posx[i]), str(posy[i])
self.overrideredirect(self)
self.geometry(str(sx)+"x"+str(sy)+"+"+self.x+"+"+self.y)
self.cmdline_win=cmdline%(self.winfo_id(), myfile)
self.player=subprocess.Popen(self.cmdline_win.split())
self.bind('<Button-1>', self.on_fullscreen)
def on_fullscreen(self, event):
if self.winfo_width()==sx:
self.tkraise()
self.withdraw()
self.deiconify()
self.geometry("1600x900+100+50")
else:
self.geometry(str(sx)+"x"+str(sy)+"+"+self.x+"+"+self.y)
if __name__ == '__main__':
root = tk.Tk()
root.config(bg='blue')
root.attributes("-fullscreen", True)
for i in range(num):
WinCam = WinFrame()
root.mainloop()
только не понятен один момент, нужно сделать именно так
self.withdraw()
self.deiconify()
без этого окно выходит на передний план со второго раза. хотя пофиг, главное работает