我正在使用两个窗口,时间表和时钟。时钟窗口由计划窗口中的按钮打开,然后在时钟功能中设置时间。
def Add_new_schedule(self):#slot for adding new schedule using clock
if(self.TABLE_LENGTH == 5):
self.TOAST_WARNING.setText("LIMIT REACHED!")
else:
from Clock import Ui_Clock
self.CLOCK_UI = Ui_Clock()
self.CLOCK_UI.showFullScreen()
然后在设置时间细节之后,时钟信号将时间值传递到调度窗口的插槽中。经过一些调整,它通过设置一个包含数据的表。
def Get_clock_values(self, TIME_DETAILS):
self.close()
self.SCHEDULE.setText("")
CURRENT_DATA = {}
CURRENT_DATA['start_time'] = TIME_DETAILS['START_HOUR']+":"+TIME_DETAILS['START_MINUTE']
CURRENT_DATA['end_time'] = TIME_DETAILS['END_HOUR']+":"+TIME_DETAILS['END_MINUTE']
CURRENT_DATA['duration_time'] = TIME_DETAILS['DURATION_HOUR']+":"+TIME_DETAILS['DURATION_MINUTE']
CURRENT_DATA['node_1'] = True
CURRENT_DATA['node_2'] = True
CURRENT_DATA['node_3'] = True
CURRENT_DATA['node_4'] = True
self.DATA_FROM_DB.append(CURRENT_DATA)
self.TABLE_LENGTH = len(self.DATA_FROM_DB)
self.Set_table()
Set_table()应该在调用schedule时更新一些已经定义的小部件。但是这不起作用,小部件不是null, 当在DATA_FROM_DB中设置虚拟值时,此函数有效,并且在不涉及另一个窗口的情况下调用Set_table()。传递的数据没有问题。
或者如果有更好的方法可以做到这一点,那也是受欢迎的。