在tkinter帧中运行常量循环的最简单方法是什么?

时间:2016-09-01 20:02:36

标签: python python-2.7 tkinter tk

我想在我的tkinter框架的后台运行一个方法,该方法将不断检查特定文件夹中是否存在某些文件。只要这些文件不存在,就会有一个红色tk.label表示" Incomplete",一旦检测到这些特定文件,tk.label将变为绿色并说出"完整"

问题是我的方法只在框架初始化时运行,一旦程序打开就会运行。如果在程序打开后添加或删除这些文件,则该方法无法实现,tk.label不会更改。

在后台运行常量检查程序的最佳方法是什么?优选仅在框架打开时运行的一个。它只是一个无休止的while循环吗?

1 个答案:

答案 0 :(得分:1)

定义一个可以执行任何操作的函数,并将该函数安排在将来再次运行。它将一直运行直到程序退出。

此示例假定一个名为 $export_file = 'export.pdf'; $import_file = './media/migration/import.xlsx'; $sheet_name = 'Menu_A'; $rendererName = PHPExcel_Settings::PDF_RENDERER_MPDF; $rendererLibraryPath = '/var/www/public/vendor/mpdf/mpdf'; $object = PHPExcel_IOFactory::load($import_file); $object->setActiveSheetIndexByName($sheet_name); PHPExcel_Settings::setPdfRenderer($rendererName, $rendererLibraryPath); $objWriter = PHPExcel_IOFactory::createWriter($object, 'PDF'); header('Content-Type: application/pdf'); header('Content-Disposition: attachment;filename="' . $export_file . '"'); header('Cache-Control: max-age=0'); $objWriter->save('php://output'); 的全局变量引用根窗口,但任何窗口小部件引用都可以。

root

调用一次启动它,然后它将永远运行

def do_something():
    <your code here>
    root.after(3000, do_something)