如何将Tkinter GUI中的视频控件定位到左上角?
把视频放到Tkinter GUI左上角的解决方案
你当前代码里用lblVideo.pack()默认会将标签组件置于窗口顶部居中位置,要放到左上角,有两种简单的修改方式:
方式一:使用place()布局
直接用place()指定左上角坐标(x=0, y=0),替换原来的pack():
from tkinter import * from tkvideo import tkvideo window = Tk() window.geometry("1481x929") window.configure(bg = "#ffffff") canvas = Canvas( window, bg = "#ffffff", height = 929, width = 1481, bd = 0, highlightthickness = 0, relief = "ridge") canvas.place(x = 0, y = 0) window.title("Video player") lblVideo = Label(window) # 替换pack为place,指定左上角坐标 lblVideo.place(x=0, y=0) player = tkvideo("prediction.mp4", lblVideo, loop=1, size=(700,500)) player.play() window.resizable(False, False) window.mainloop()
方式二:调整pack()的参数
通过设置anchor='nw'(西北方向,即左上角),同时关闭自动填充和扩展:
from tkinter import * from tkvideo import tkvideo window = Tk() window.geometry("1481x929") window.configure(bg = "#ffffff") canvas = Canvas( window, bg = "#ffffff", height = 929, width = 1481, bd = 0, highlightthickness = 0, relief = "ridge") canvas.place(x = 0, y = 0) window.title("Video player") lblVideo = Label(window) # 调整pack参数,锚定左上角 lblVideo.pack(anchor='nw', fill=None, expand=False) player = tkvideo("prediction.mp4", lblVideo, loop=1, size=(700,500)) player.play() window.resizable(False, False) window.mainloop()
两种方式都能让视频标签固定在GUI的左上角,你可以根据后续布局需求选择适合的方式。
内容的提问来源于stack exchange,提问作者Skye
相关产品推荐
相关产品推荐

