Найти - Пользователи
Полная версия: tkinter виджет Frame
Начало » GUI » tkinter виджет Frame
1 2
jony_77
Возможно видео нет из-за ‘-vo vaapi’. можно просто убрать
jony_77
Ну что? походу нет решения ?
4kpt_II
Продолбался час. Могу предложить только одно решение. 8 маленьких окошек по контуру. А большое в центре. Нажимаете на окошки - они становятся в центре. Что я только не пробовал
jony_77
Не то. Есть мысль сделать вместо frame, отдельными окошками toplevel. можно toplevel без бордюра (оформления) запускать?
4kpt_II
Можно, но оконный менеджер будет их игнорировать и у Вас будет туча ссылок в панели задач. Это 200% не то
jony_77
Вот… держи изоленту… (из старого анекдота)
#!/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()
без этого окно выходит на передний план со второго раза. хотя пофиг, главное работает

4kpt_II
Жуткая костылятинка
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB