我的窗户上有一个按钮。如果我点击它,我想启动VLC并传输URL。
def startstream():
args = ['C:/Program Files/VideoLAN/VLC/vlc.exe', 'http://dreambox:8001/1:0:19:7B:B:85:C00000:0:0:0:']
subprocess.call(args)
# Buttons
button_tnt = Button(fenster, text = "TNT Serie HD", command = startstream)
这是我想要的。
下一个不能按我的意愿工作,我也不知道为什么不这样做。
def startstream(url):
args = ['C:/Program Files/VideoLAN/VLC/vlc.exe', url]
subprocess.call(args)
# Buttons
button_tnt = Button(fenster, text = "TNT Serie HD", command = startstream('http://dreambox:8001/1:0:19:7B:B:85:C00000:0:0:0:'))
使用第一个代码,该窗口将出现,并且什么也没有发生。如果我单击该按钮,则流开始完美。
第二个代码:运行脚本,流立即启动。关闭VLC后,无法通过按钮重新打开流,它没有任何功能。
但是我想使用第二个代码。我有多个按钮,因此只能更改每个按钮的参数。使用第一个代码,我必须为每个流编写一个新函数。
请帮我 :(
谢谢!
您正在执行startstream
而不是分配它*。要为其提供参数,请使用以下命令:
button_tnt = Button(fenster,
text="TNT Serie HD",
command= lambda: startstream('http://dreambox:8001/1:0:19:7B:B:85:C00000:0:0:0:'))
*特别是,你执行startstream(..)
和分配的结果是到command
。
该lambda
会,而不是创建一个点击后命令将调用该函数。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句