使用python脚本为任务调度程序创建GUI

时间:2013-06-18 09:14:20

标签: python-2.7 wxpython

我开发了一个脚本来创建一个任务调度程序,它在调度程序窗口中有3个GUI按钮“添加”,“编辑”和“删除”。单击“添加”将打开一个任务调度程序窗口,用户可以在应用设置后设置任务,日期,时间和任务名称等,单击“确定”后,GUI将返回到更新的调度程序窗口。在列表中设置任务名称的详细信息。其中“编辑”窗口用于编辑从列表中选择的任务调度程序。我有一个名为“类AddTask”的类,它是在单击“添加”按钮时创建的事件。类似于单击'编辑'我通过创建一个对象来调用相同的AddTask类,我从中调用编辑函数。我希望这些'AddTask'和'EditTask'应该是预期的独立类和函数。

我希望添加和编辑按钮的GUI必须相同,但功能应该不同,对于ADD,它必须添加任务并在调度程序的列表中更新它,而对于EDIT,它必须编辑任务调度程序从列表中选择。 enter image description here

2 个答案:

答案 0 :(得分:0)

我个人会使用ObjectListView小部件而不是ListCtrl,因为我发现ObjectListView更容易更新。无论哪种方式,对于添加/编辑框架,您只需添加一个名为“fields”的参数或类似的参数,并将其设置为None。

class AddTask(wx.Frame):
    #------------------------------------------------------------
    def __init__(self, parent, id, title, fields=None):

然后您可以将其称为添加数据的常规方式。但是,当您将其称为编辑时,您将传递ListCtrl中值的列表(或dict)以填充此帧中的字段。您需要添加类似

的内容
if fields:
    # set the values of the widgets as necessary
    self.field.SetValue("Task Name")

答案 1 :(得分:0)

这是我试过的

def UpdateList(self,task):
    run="Disabled"
    status="Not Scheduled"
    date=datetime.now().strftime("%d-%m-%Y")
    self.List=[{"taskname":"%s"%(task),"run":"%s"(run),"date":"%s"(date),"status":"%s"%(status)}]
    list1=self.listOlv.SetObjects(self.List)
相关问题