好吧,问题是:
如您所见,在wx.lib.masked.TimeCtrl
实例中编辑秒时,小时段将被部分阻塞。但宽度不能用size
参数或SetSize
方法改变,只能改变高度,不能解决问题。你知道吗
我已经检查了一点源代码,看起来TimeCtrl
是BaseMaskedTextCtrl
的继承,它是wx.TextCtrl
和MaskedEditMixin
的多重继承,基本上如果在创建新的TimeCtrl
实例时给出了size
:
# allow for explicit size specification:
if size != wx.DefaultSize:
# override (and remove) "autofit" autoformat code in standard time formats:
maskededit_kwargs['formatcodes'] = 'T!'
但实际上maskededit_kwargs['formatcodes'] = 'T!'
只是告诉MaskedEditMixin
:1)这是一种时间格式;2)根据这些行强制所有字符显示为大写:
self._forceupper = '!' in self._formatcodes
......
self._isTime = 'T' in self._ctrl_constraints._formatcodes and _isTimeType(mask)
所以,基本上,那些声称允许显式大小规范的代码对它没有任何作用,我也有点不知所措了,看看哪个部分负责更改宽度,有人知道怎么做吗?你知道吗
p.S.:windows 7 64位上的wxPython 3.0.2.0
找到解决办法了!你知道吗
实际上在
BaseMaskedTextCtrl
中有一个SetFont
方法:如您所见,
SetInitialSize
可以用来设置宽度和高度。你知道吗很方便。你知道吗
相关问题 更多 >
编程相关推荐