TimeCtrl provides a multi-cell control that allows manipulation of a time value. It supports 12 or 24 hour format, and you can use wxDateTime or mxDateTime to get/set values from the control.
Left/right/tab keys to switch cells within a TimeCtrl, and the up/down arrows act like a spin control. TimeCtrl also allows for an actual spin button to be attached to the control, so that it acts like the up/down arrow keys.
The ! or c key sets the value of the control to the current time.
Here’s the API for TimeCtrl:
from wx.lib.masked import TimeCtrl TimeCtrl( parent, id = -1, value = '00:00:00', pos = wx.DefaultPosition, size = wx.DefaultSize, style = wxTE_PROCESS_TAB, validator = wx.DefaultValidator, name = "time", format = 'HHMMSS', fmt24hr = False, displaySeconds = True, spinButton = None, min = None, max = None, limited = None, oob_color = "Yellow" )
- value
- If no initial value is set, the default will be midnight; if an illegal string is specified, a ValueError will result. (You can always later set the initial time with SetValue() after instantiation of the control.)
- size
- The size of the control will be automatically adjusted for 12/24 hour format if wx.DefaultSize is specified. NOTE: due to a problem with wx.DateTime, if the locale does not use ‘AM/PM’ for its values, the default format will automatically change to 24 hour format, and an AttributeError will be thrown if a non-24 format is specified.
- style
- By default, TimeCtrl will process TAB events, by allowing tab to the different cells within the control.
- validator
- By default, TimeCtrl just uses the default (empty) validator, as all of its validation for entry control is handled internally. However, a validator can be supplied to provide data transfer capability to the control.
- format
- This parameter can be used instead of the fmt24hr and displaySeconds parameters, respectively; it provides a shorthand way to specify the time format you want. Accepted values are ‘HHMMSS’, ‘HHMM’, ‘24HHMMSS’, and ‘24HHMM’. If the format is specified, the other two arguments will be ignored.
- fmt24hr
- If True, control will display time in 24 hour time format; if False, it will use 12 hour AM/PM format. SetValue() will adjust values accordingly for the control, based on the format specified. (This value is ignored if the format parameter is specified.)
- displaySeconds
- If True, control will include a seconds field; if False, it will just show hours and minutes. (This value is ignored if the format parameter is specified.)
- spinButton
- If specified, this button’s events will be bound to the behavior of the TimeCtrl, working like up/down cursor key events. (See BindSpinButton.)
- min
- Defines the lower bound for “valid” selections in the control. By default, TimeCtrl doesn’t have bounds. You must set both upper and lower bounds to make the control pay attention to them, (as only one bound makes no sense with times.) “Valid” times will fall between the min and max “pie wedge” of the clock.
- max
- Defines the upper bound for “valid” selections in the control. “Valid” times will fall between the min and max “pie wedge” of the clock. (This can be a “big piece”, ie. min = 11pm, max= 10pm means all but the hour from 10:00pm to 11pm are valid times.)
- limited
- If True, the control will not permit entry of values that fall outside the set bounds.
- oob_color
- Sets the background color used to indicate out-of-bounds values for the control when the control is not limited. This is set to “Yellow” by default.
Sets the expected minimum value, or lower bound, of the control.
(The lower bound will only be enforced if the control is
configured to limit its values to the set bounds.)
If a value of None is provided, then the control will have
explicit lower bound. If the value specified is greater than
the current lower bound, then the function returns False
and the
lower bound will not change from its current setting. On success,
the function returns True. Even if set, if there is no corresponding
upper bound, the control will behave as if it is unbounded.
If successful and the current value is outside the new bounds, if the control is limited the value will be automatically adjusted to the nearest bound; if not limited, the background of the control will be colored with the current out-of-bounds color.
Sets the expected maximum value, or upper bound, of the control.
(The upper bound will only be enforced if the control is
configured to limit its values to the set bounds.)
If a value of None is provided, then the control will
have no explicit upper bound. If the value specified is less
than the current lower bound, then the function returns False
and
the maximum will not change from its current setting. On success,
the function returns True. Even if set, if there is no corresponding
lower bound, the control will behave as if it is unbounded.
If successful and the current value is outside the new bounds, if the control is limited the value will be automatically adjusted to the nearest bound; if not limited, the background of the control will be colored with the current out-of-bounds color.
True
only if both operations succeed. Note: leaving out an argument
will remove the corresponding bound, and result in the behavior of
an unbounded control.TimeCtrl |
Masked control providing several time formats and manipulation of time values. |
TimeCtrlAccessorsMixin |
Defines TimeCtrl’s list of attributes having their own Get/Set functions, |
TimeUpdatedEvent |
Used to fire an EVT_TIMEUPDATE event whenever the value in a TimeCtrl changes. |