如何实现每x秒发送x次_消息?使用tkinter进口

2024-06-16 09:43:56 发布

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

尝试在x个周期内每x秒发送一条消息

我有一个按钮,可以调用send_message,用户可以输入systemFrequency和systemRunTime

发布消息执行该操作

def publish_message(self):
...#do something 

def send_message(self):
    systemFrequency = float(freqSettings.systemFrequency)
    systemRunTime = int(freqSettings.systemRunTime)
    global count

    count = 0

    if systemFrequency != 0:

        while (count < systemRunTime):
            self.schedule()

    else:
        self.publish_message()

def schedule(self):
    self.publish_message()
    self.increaseCount()

def increaseCount(self):
    global count
    count += 1

在执行发布消息之前,当前未等待x秒


Tags: 用户selfsend消息messagedefcount按钮
1条回答
网友
1楼 · 发布于 2024-06-16 09:43:56

好的,您可以使用tkinterafter方法。它计划在给定的毫秒数后调用函数

def publish_message(self):
...#do something 

def send_message(self):
    systemFrequency = float(freqSettings.systemFrequency)
    systemRunTime = int(freqSettings.systemRunTime)
    global count

    count = 0

    if systemFrequency != 0:
        self.schedule()
    else:
        self.publish_message()

def schedule(self):
    if count >= systemRunTime:
        return
    self.publish_message()
    self.increaseCount()
    # works if self.master is your window, change if it isn't
    self.master.after(1000, schedule, self)
    # after 1000 ms, call schedule function with parameter self

def increaseCount(self):
    global count
    count += 1

相关问题 更多 >