吃零食的时候有没有办法摆脱Tk窗口?

2024-09-20 22:54:23 发布

您现在位置:Python中文网/ 问答频道 /正文

我想用Snack来制作一个简单的mp3播放器。它与Tkinter一起工作。以下是有关其用法的文档说明:

The beginning of a program that uses Snack might look like:

    from Tkinter import *
    root = Tk()

    import tkSnack
    tkSnack.initializeSnack(root)

    # Now you can use tkSnack commands and objects
    # ...

root = Tk()行打开一个空窗口,在初始化Snack之后可以关闭该窗口,Snack将继续工作(付费、暂停、恢复、加载音频等)。你知道吗

有没有办法避免打开这扇窗户?你能解释一下为什么这样的图书馆需要一个图形窗口才能工作吗?你知道吗


Tags: ofthe文档import用法thattkinterroot
2条回答

如果您使用root = Tk().withdraw(),那么Tk窗口将被创建,但不会显示。希望它不会在屏幕上闪烁。你知道吗

Tcl snack包是一个Tk扩展,有许多调用Tk函数的命令。所以最初的设计并没有把它分成窗口和非窗口两部分。不过,Tk不需要使用snack,但您必须在某个时刻运行事件循环。例如,在Tcl脚本(没有Tk)中,您可以执行以下操作:

package require snack
snack::sound snd -file $filename
snd play -blocking 0
after 5000 {set waiting 1}
vwait waiting

这将用配置的文件数据设置一个snd命令,然后告诉它播放。但是,在启动事件循环(vwait waiting)之前不会发生任何事情,在本例中,我们计划在5秒钟内发生一些事情来超时等待。你知道吗

查看tkSnack的来源可能有助于您将上述内容转化为pythonic的内容。它们只是Tcl/Tk包的包装。但我怀疑运行Tk窗口将有助于播放音乐。你知道吗

可以使用root.withdraw()方法隐藏窗口。你知道吗

或者,如果您打算再次使用它,请使用root.deiconify()

相关问题 更多 >

    热门问题