npyscreen在FixedText小部件中显示当前时间?

2024-04-20 06:51:14 发布

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

我试图在NPSAppManaged应用程序的FixedText小部件中显示时间。在

到目前为止,我得到的是:

import npyscreen
import datetime
import threading
from time import sleep

class MainForm(npyscreen.Form):
    def create(self):
        self.add(npyscreen.FixedText, value = "Time")

    def afterEditing(self):
        self.parentApp.setNextForm(None)

    def set_value(self):
        return "Tom"

class TestApp(npyscreen.NPSAppManaged):

    def onStart(self):
        self.registerForm("MAIN", MainForm())

        thread_time = threading.Thread(target=self.update_time,args=())
        thread_time.daemon = True
        thread_time.start()

    def update_time(self):
       while True:
           # self.f.wStatus2.value = datetime.datetime.now().ctime()
           # self.f.wStatus2.display()
           sleep(1)

if __name__ == "__main__":
    App = TestApp()
    App.run()

我只是不知道如何从线程中引用小部件的.value参数并对其进行更新。我该怎么办?在


Tags: importselfdatetimetimevalue部件defsleep
1条回答
网友
1楼 · 发布于 2024-04-20 06:51:14

您需要将npyscreen.FixedText分配给变量,如下所示:

 def create(self): 
     self.w_time = self.add(npyscreen.FixedText, value = "Time")

现在您可以使用self.w_time.value来访问它。在

相关问题 更多 >