如何在python中显示计时器

问题描述 投票:1回答:1

嘿,我正在制作一个记录桌面屏幕的程序。

所以我想做的就是每当我在GUI窗口中单击启动按钮(tkinter Gui)。

它应该在我的桌面屏幕上而不是在我的tkinter窗口上以大字体直接启动一个计时器,如3 ....,2 ....,1....。然后我的功能应该开始。

我该怎么做..

import tkinter as tk
from tkinter import *

root = Tk()
root.title("our program")
start_cap =tk.button(text='start recording' command=start_capute)
start_cap.pack()
root.mainloop()

这里没有提到功能和整个代码,代码没有问题,我只想在其中添加计时器的新功能。

python-3.x tkinter
1个回答
1
投票

最小示例:

import tkinter as tk
# from tkinter import *

def Start():

    def Count(Number):
        if Number == -1:
            win.withdraw()
            print("Start") # what you want to do
            return False
        NumberLabel["text"] = Number
        Number -= 1
        win.after(1000,lambda :Count(Number))
    screen_width = root.winfo_screenwidth()
    screen_height = root.winfo_screenheight()

    win = tk.Toplevel()
    win.geometry("+%d+%d"%((screen_width-win.winfo_width())/2,(screen_height-win.winfo_height())/2)) # make it in the center.
    win.overrideredirect(1)
    win.wm_attributes('-topmost',1) # top window
    win.wm_attributes('-transparentcolor',win['bg']) # background transparent.
    NumberLabel = tk.Label(win,font=("",40,"bold"),fg='white')
    NumberLabel.pack()
    win.after(0,lambda :Count(3))
    win.mainloop()

root = tk.Tk()
root.title("our program")
start_cap = tk.Button(text='start recording',command=Start)
start_cap.pack()
root.mainloop()
© www.soinside.com 2019 - 2024. All rights reserved.