📄 calendar.py
字号:
# This file was created automatically by SWIG 1.3.29.
# Don't modify this file, modify the SWIG interface instead.
"""
Classes for an interactive Calendar control.
"""
import _calendar
import new
new_instancemethod = new.instancemethod
def _swig_setattr_nondynamic(self,class_type,name,value,static=1):
if (name == "thisown"): return self.this.own(value)
if (name == "this"):
if type(value).__name__ == 'PySwigObject':
self.__dict__[name] = value
return
method = class_type.__swig_setmethods__.get(name,None)
if method: return method(self,value)
if (not static) or hasattr(self,name):
self.__dict__[name] = value
else:
raise AttributeError("You cannot add attributes to %s" % self)
def _swig_setattr(self,class_type,name,value):
return _swig_setattr_nondynamic(self,class_type,name,value,0)
def _swig_getattr(self,class_type,name):
if (name == "thisown"): return self.this.own()
method = class_type.__swig_getmethods__.get(name,None)
if method: return method(self)
raise AttributeError,name
def _swig_repr(self):
try: strthis = "proxy of " + self.this.__repr__()
except: strthis = ""
return "<%s.%s; %s >" % (self.__class__.__module__, self.__class__.__name__, strthis,)
import types
try:
_object = types.ObjectType
_newclass = 1
except AttributeError:
class _object : pass
_newclass = 0
del types
def _swig_setattr_nondynamic_method(set):
def set_attr(self,name,value):
if (name == "thisown"): return self.this.own(value)
if hasattr(self,name) or (name == "this"):
set(self,name,value)
else:
raise AttributeError("You cannot add attributes to %s" % self)
return set_attr
import _misc
import _core
wx = _core
__docfilter__ = wx.__DocFilter(globals())
CAL_SUNDAY_FIRST = _calendar.CAL_SUNDAY_FIRST
CAL_MONDAY_FIRST = _calendar.CAL_MONDAY_FIRST
CAL_SHOW_HOLIDAYS = _calendar.CAL_SHOW_HOLIDAYS
CAL_NO_YEAR_CHANGE = _calendar.CAL_NO_YEAR_CHANGE
CAL_NO_MONTH_CHANGE = _calendar.CAL_NO_MONTH_CHANGE
CAL_SEQUENTIAL_MONTH_SELECTION = _calendar.CAL_SEQUENTIAL_MONTH_SELECTION
CAL_SHOW_SURROUNDING_WEEKS = _calendar.CAL_SHOW_SURROUNDING_WEEKS
CAL_HITTEST_NOWHERE = _calendar.CAL_HITTEST_NOWHERE
CAL_HITTEST_HEADER = _calendar.CAL_HITTEST_HEADER
CAL_HITTEST_DAY = _calendar.CAL_HITTEST_DAY
CAL_HITTEST_INCMONTH = _calendar.CAL_HITTEST_INCMONTH
CAL_HITTEST_DECMONTH = _calendar.CAL_HITTEST_DECMONTH
CAL_HITTEST_SURROUNDING_WEEK = _calendar.CAL_HITTEST_SURROUNDING_WEEK
CAL_BORDER_NONE = _calendar.CAL_BORDER_NONE
CAL_BORDER_SQUARE = _calendar.CAL_BORDER_SQUARE
CAL_BORDER_ROUND = _calendar.CAL_BORDER_ROUND
class CalendarDateAttr(object):
"""
A set of customization attributes for a calendar date, which can be
used to control the look of the Calendar object.
"""
thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
__repr__ = _swig_repr
def __init__(self, *args, **kwargs):
"""
__init__(self, Colour colText=wxNullColour, Colour colBack=wxNullColour,
Colour colBorder=wxNullColour, Font font=wxNullFont,
int border=CAL_BORDER_NONE) -> CalendarDateAttr
Create a CalendarDateAttr.
"""
_calendar.CalendarDateAttr_swiginit(self,_calendar.new_CalendarDateAttr(*args, **kwargs))
def SetTextColour(*args, **kwargs):
"""SetTextColour(self, Colour colText)"""
return _calendar.CalendarDateAttr_SetTextColour(*args, **kwargs)
def SetBackgroundColour(*args, **kwargs):
"""SetBackgroundColour(self, Colour colBack)"""
return _calendar.CalendarDateAttr_SetBackgroundColour(*args, **kwargs)
def SetBorderColour(*args, **kwargs):
"""SetBorderColour(self, Colour col)"""
return _calendar.CalendarDateAttr_SetBorderColour(*args, **kwargs)
def SetFont(*args, **kwargs):
"""SetFont(self, Font font)"""
return _calendar.CalendarDateAttr_SetFont(*args, **kwargs)
def SetBorder(*args, **kwargs):
"""SetBorder(self, int border)"""
return _calendar.CalendarDateAttr_SetBorder(*args, **kwargs)
def SetHoliday(*args, **kwargs):
"""SetHoliday(self, bool holiday)"""
return _calendar.CalendarDateAttr_SetHoliday(*args, **kwargs)
def HasTextColour(*args, **kwargs):
"""HasTextColour(self) -> bool"""
return _calendar.CalendarDateAttr_HasTextColour(*args, **kwargs)
def HasBackgroundColour(*args, **kwargs):
"""HasBackgroundColour(self) -> bool"""
return _calendar.CalendarDateAttr_HasBackgroundColour(*args, **kwargs)
def HasBorderColour(*args, **kwargs):
"""HasBorderColour(self) -> bool"""
return _calendar.CalendarDateAttr_HasBorderColour(*args, **kwargs)
def HasFont(*args, **kwargs):
"""HasFont(self) -> bool"""
return _calendar.CalendarDateAttr_HasFont(*args, **kwargs)
def HasBorder(*args, **kwargs):
"""HasBorder(self) -> bool"""
return _calendar.CalendarDateAttr_HasBorder(*args, **kwargs)
def IsHoliday(*args, **kwargs):
"""IsHoliday(self) -> bool"""
return _calendar.CalendarDateAttr_IsHoliday(*args, **kwargs)
def GetTextColour(*args, **kwargs):
"""GetTextColour(self) -> Colour"""
return _calendar.CalendarDateAttr_GetTextColour(*args, **kwargs)
def GetBackgroundColour(*args, **kwargs):
"""GetBackgroundColour(self) -> Colour"""
return _calendar.CalendarDateAttr_GetBackgroundColour(*args, **kwargs)
def GetBorderColour(*args, **kwargs):
"""GetBorderColour(self) -> Colour"""
return _calendar.CalendarDateAttr_GetBorderColour(*args, **kwargs)
def GetFont(*args, **kwargs):
"""GetFont(self) -> Font"""
return _calendar.CalendarDateAttr_GetFont(*args, **kwargs)
def GetBorder(*args, **kwargs):
"""GetBorder(self) -> int"""
return _calendar.CalendarDateAttr_GetBorder(*args, **kwargs)
_calendar.CalendarDateAttr_swigregister(CalendarDateAttr)
class CalendarEvent(_core.DateEvent):
"""Proxy of C++ CalendarEvent class"""
thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
__repr__ = _swig_repr
def __init__(self, *args, **kwargs):
"""__init__(self, CalendarCtrl cal, EventType type) -> CalendarEvent"""
_calendar.CalendarEvent_swiginit(self,_calendar.new_CalendarEvent(*args, **kwargs))
def SetWeekDay(*args, **kwargs):
"""SetWeekDay(self, int wd)"""
return _calendar.CalendarEvent_SetWeekDay(*args, **kwargs)
def GetWeekDay(*args, **kwargs):
"""GetWeekDay(self) -> int"""
return _calendar.CalendarEvent_GetWeekDay(*args, **kwargs)
def PySetDate(self, date):
"""takes datetime.datetime or datetime.date object"""
self.SetDate(_pydate2wxdate(date))
def PyGetDate(self):
"""returns datetime.date object"""
return _wxdate2pydate(self.GetDate())
_calendar.CalendarEvent_swigregister(CalendarEvent)
wxEVT_CALENDAR_DOUBLECLICKED = _calendar.wxEVT_CALENDAR_DOUBLECLICKED
wxEVT_CALENDAR_SEL_CHANGED = _calendar.wxEVT_CALENDAR_SEL_CHANGED
wxEVT_CALENDAR_DAY_CHANGED = _calendar.wxEVT_CALENDAR_DAY_CHANGED
wxEVT_CALENDAR_MONTH_CHANGED = _calendar.wxEVT_CALENDAR_MONTH_CHANGED
wxEVT_CALENDAR_YEAR_CHANGED = _calendar.wxEVT_CALENDAR_YEAR_CHANGED
wxEVT_CALENDAR_WEEKDAY_CLICKED = _calendar.wxEVT_CALENDAR_WEEKDAY_CLICKED
EVT_CALENDAR = wx.PyEventBinder( wxEVT_CALENDAR_DOUBLECLICKED, 1)
EVT_CALENDAR_SEL_CHANGED = wx.PyEventBinder( wxEVT_CALENDAR_SEL_CHANGED, 1)
EVT_CALENDAR_DAY = wx.PyEventBinder( wxEVT_CALENDAR_DAY_CHANGED, 1)
EVT_CALENDAR_MONTH = wx.PyEventBinder( wxEVT_CALENDAR_MONTH_CHANGED, 1)
EVT_CALENDAR_YEAR = wx.PyEventBinder( wxEVT_CALENDAR_YEAR_CHANGED, 1)
EVT_CALENDAR_WEEKDAY_CLICKED = wx.PyEventBinder( wxEVT_CALENDAR_WEEKDAY_CLICKED, 1)
class CalendarCtrl(_core.Control):
"""
The calendar control allows the user to pick a date interactively.
The CalendarCtrl displays a window containing several parts: the
control to pick the month and the year at the top (either or both of
them may be disabled) and a month area below them which shows all the
days in the month. The user can move the current selection using the
keyboard and select the date (generating EVT_CALENDAR event) by
pressing <Return> or double clicking it.
It has advanced possibilities for the customization of its
display. All global settings (such as colours and fonts used) can, of
course, be changed. But also, the display style for each day in the
month can be set independently using CalendarDateAttr class.
An item without custom attributes is drawn with the default colours
and font and without border, but setting custom attributes with
SetAttr allows to modify its appearance. Just create a custom
attribute object and set it for the day you want to be displayed
specially A day may be marked as being a holiday, (even if it is not
recognized as one by `wx.DateTime`) by using the SetHoliday method.
As the attributes are specified for each day, they may change when the
month is changed, so you will often want to update them in an
EVT_CALENDAR_MONTH event handler.
"""
thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
__repr__ = _swig_repr
def __init__(self, *args, **kwargs):
"""
__init__(self, Window parent, int id=-1, DateTime date=DefaultDateTime,
Point pos=DefaultPosition, Size size=DefaultSize,
long style=wxCAL_SHOW_HOLIDAYS|wxWANTS_CHARS,
String name=CalendarNameStr) -> CalendarCtrl
Create and show a calendar control.
"""
_calendar.CalendarCtrl_swiginit(self,_calendar.new_CalendarCtrl(*args, **kwargs))
self._setOORInfo(self)
def Create(*args, **kwargs):
"""
Create(self, Window parent, int id, DateTime date=DefaultDateTime,
Point pos=DefaultPosition, Size size=DefaultSize,
long style=wxCAL_SHOW_HOLIDAYS|wxWANTS_CHARS,
String name=CalendarNameStr) -> bool
Acutally create the GUI portion of the CalendarCtrl for 2-phase
creation.
"""
return _calendar.CalendarCtrl_Create(*args, **kwargs)
def SetDate(*args, **kwargs):
"""
SetDate(self, DateTime date)
Sets the current date.
"""
return _calendar.CalendarCtrl_SetDate(*args, **kwargs)
def GetDate(*args, **kwargs):
"""
GetDate(self) -> DateTime
Gets the currently selected date.
"""
return _calendar.CalendarCtrl_GetDate(*args, **kwargs)
def SetLowerDateLimit(*args, **kwargs):
"""
SetLowerDateLimit(self, DateTime date=DefaultDateTime) -> bool
set the range in which selection can occur
"""
return _calendar.CalendarCtrl_SetLowerDateLimit(*args, **kwargs)
def SetUpperDateLimit(*args, **kwargs):
"""
SetUpperDateLimit(self, DateTime date=DefaultDateTime) -> bool
set the range in which selection can occur
"""
return _calendar.CalendarCtrl_SetUpperDateLimit(*args, **kwargs)
def GetLowerDateLimit(*args, **kwargs):
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -