如何制作打开日历然后选择日期并关闭它的按钮? 到目前为止,我只创建了日历(我不明白为什么它总是创建 2 个)。但我不知道如何获得选定的日期。我在 Python 3 上使用 pythonwx。
class MyCalendar(wx.Frame):
def __init__(self, *args, **kargs):
wx.Frame.__init__(self, *args, **kargs)
self.cal = CalendarCtrl(self, 10, wx.DateTime.Now())
self.timer = wx.Timer(self)
if __name__ == '__main__':
app = wx.App()
frame = MyCalendar(None)
frame.Show()
app.MainLoop()
编辑
添加py3版本
from wx.adv import CalendarCtrl, GenericCalendarCtrl, CalendarDateAttr
class MyCalendar(wx.Frame):
def __init__(self, *args, **kargs):
wx.Frame.__init__(self, *args, **kargs)
self.cal = CalendarCtrl(self, 10, wx.DateTime.Now())
self.cal.Bind(wx.adv.EVT_CALENDAR, self.OnDate)
def OnDate(self,event):
print (self.cal.GetDate())
wx.Window.Close(self)
最佳答案
import wx
import wx.adv
class MyCalendar(wx.Frame):
def __init__(self, *args, **kargs):
wx.Frame.__init__(self, *args, **kargs)
self.cal = wx.adv.CalendarCtrl(self, 10, wx.DateTime.Now())
self.cal.Bind(wx.adv.EVT_CALENDAR, self.OnDate)
def OnDate(self,event):
print(self.cal.GetDate())
if __name__ == '__main__':
app = wx.App()
frame = MyCalendar(None)
frame.Show()
app.MainLoop()
现在双击一个日期。
我会让您研究创建一个框架/面板并在其上放置一个按钮,以激活日历。
关于python - 从 python wx.lib.calendar 获取选定的日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46400863/