用于任务调度程序的 Wxpython gui
我被要求开发一个类似于任务调度程序中的触发窗口的 GUI.我正在尽我所能做到这一点,但我一直坚持在单个框架中创建多个面板.下面是我的 GUI 假设的快照看起来像.请帮帮我.
I'am asked to develop a GUI similar to a trigger window in task scheduler.I am trying my best to do it and i am stuck in creating multiple panels in a single frame.Below is the snapshot of how my GUI supposed to look like.Please help me out.
下面是我使用 wxpython 创建的调度窗口.
Below is the scheduler window i have created using wxpython.
class SchedulerWindow(wx.Frame):
""" This generates the GUI for Setting Window"""
#------------------------------------------------------------------------------------
def __init__(self, parent, id, title):
wx.Frame.__init__(self, parent, id, title="Scheduler", style=wx.DEFAULT_FRAME_STYLE ^ wx.RESIZE_BORDER ^ wx.MAXIMIZE_BOX, size=(600,500))
panel=wx.Panel(self)
sizer = wx.GridBagSizer(5, 5)
font = wx.Font(10, wx.DEFAULT, wx.NORMAL, wx.BOLD)
self.field = wx.TextCtrl(panel,pos=(65,20),size=(400,20))
field_lbl=wx.StaticText(panel,-1, label='Name:', pos=(20,20))
field_lbl.SetFont(font)
line = wx.StaticLine(panel,pos=(0,50), size=(600,1))
#sizer.Add(line, pos=(1,30), span=(1, 5),flag=wx.EXPAND|wx.BOTTOM, border=10)
Box=wx.StaticBox(panel,label='Settings',size=(565,200),pos=(15,60))
Box1=wx.StaticBox(panel,label='',size=(430,120),pos=(120,120))
boxsizer = wx.StaticBoxSizer(Box, wx.VERTICAL)
boxsizer.Add(wx.RadioButton(panel,label="One time",pos=(25,90)),flag=wx.LEFT|wx.TOP, border=5)
boxsizer.Add(wx.RadioButton(panel,label="Daily",pos=(25,110)),flag=wx.LEFT|wx.TOP, border=5)
boxsizer.Add(wx.RadioButton(panel,label="Weekly",pos=(25,130)),flag=wx.LEFT|wx.TOP, border=5)
boxsizer.Add(wx.RadioButton(panel,label="Monthly",pos=(25,150)),flag=wx.LEFT|wx.TOP, border=5)
sizer.Add(boxsizer,pos=(5,10) ,span=(1, 5),
flag=wx.EXPAND|wx.TOP|wx.LEFT|wx.RIGHT , border=10)
wx.StaticLine(panel, pos=(100,90), size=(1,100))
start=wx.StaticText(panel, -1, 'Start Date:', pos=(120,90))
Time=wx.StaticText(panel, -1, 'Start Time:', pos=(350, 90))
start.SetFont(font)
Time.SetFont(font)
Box2=wx.StaticBox(panel,label='Advance Settings',size=(565,200),pos=(15,280))
boxsizer = wx.StaticBoxSizer(Box2, wx.VERTICAL)
boxsizer.Add(wx.CheckBox(panel, -1,'Repeat task every', pos=(20,300),size=(200,25)))
我想在开始时间:"textctrl 中显示时间.我尝试使用 TimePickerCtrl,但无法实现.我使用DateCtrl"和 Calenderdialog 在开始日期:"textctrl 中显示日历.期待与示例的好建议.谢谢
I would want to show the time in 'start time:' textctrl. I tried using TimePickerCtrl,but couldn't make it.I used 'DateCtrl' and Calenderdialog to show up the calender in 'Start date:' textctrl. Looking forward for good suggestion with example.Thanks