我正在嘗試在玩游戲時為煙霧創建一個計時器,我希望它能夠檢測到我何時按下“p”并開始在疊加層中顯示一個計時器。這是我到目前為止所擁有的:
from tkinter import *
import time
import keyboard
class Timer():
def __init__(self):
self.Time = 8
while self.Time != 0:
self.Label(self, text="Smoke 1:" self.Time)
self.Label.pack()
self.Time -= 0.10
self.Time = round(self.Time, 2)
time.sleep(0.1)
keyboard.add_hotkey('p', Timer())
keyboard.wait('esc')
root = Tk()
root.geometry("200x75")
root.overrideredirect(True)
root.wm_attributes("-topmost", True)
root.wm_attributes("-transparentcolor", "gray")
root.wm_attributes("-alpha", 0.5)
root.mainloop()
self.Label 不起作用。有人能幫我嗎?
uj5u.com熱心網友回復:
您可以使用鍵盤和執行緒在按鍵上創建新的 tkinter 標簽。
import tkinter as tk
import time
import threading
import keyboard
def thread(_root):
keyboard.add_hotkey('p', update_label, args=(_root,))
keyboard.wait('esc')
def update_label(_root):
tk.Label(_root, text=str(time.time())).pack()
root = tk.Tk()
label = tk.Label(root, text='')
label.pack()
listener = threading.Thread(target=thread, args=(root,))
listener.start()
root.mainloop()
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/407816.html
標籤:
下一篇:如何在頂層使用父類
