我有一个QDateTimeField
,其掩码设置为HH:mm
考虑一个用户删除(例如)小时部分的场景:
如果用户清空小时部分并随后按回车键,小时部分将重置为00(这是预期的行为,始终)。
如果用户清空小时部分并且只是点击其他地方(当QDateTimeField
失去它的焦点时),小时部分仍为空,这是我的问题。
任何人都可以用一种方法来解决这个问题吗?
答案 0 :(得分:1)
interpretText()
函数可以解决问题。在访问其文本之前,您必须在interpretText()
函数(在您的委托类中)中调用QDateTimeEditor
的{{1}}。
根据Qt documentation
此函数解释旋转框的文本。如果值有 自上次解释后发生变化,它将发出信号。
示例:
setModelData
答案 1 :(得分:0)
我的建议是创建一个连接信号timeChanged的动作,并手动将时间设置为正确的格式。