我的日期为mm / dd / yyyy格式 QLineEdit
. 我正在使用键盘输入,而不是因为要求而使用 QDateEdit
. 当行编辑进入视图时,它必须向用户显示当前日期 . 我需要以下内容进行行编辑 .
-
我需要始终显示两个斜杠,并且在输入或删除时光标必须跳过 .
-
我不应该允许用户输入无效日期,即在输入自身时,行编辑不应该得到无效的数字 .
-
当行编辑进入视图时,我必须将当前日期设置为默认文本 .
对于第一点,我尝试使用 setInputMask("99/99/9999")
但是这样我无法使用 setText()
设置当前日期 . 如何使用QRegExp不允许行编辑在使用 setInputMask()
时获取无效数字?
1 回答
QDateEdit将满足您的目的 .
使用
setDisplayFormat("dd/MM/yyyy")
.QDateEdit
不允许无效日期您可以使用
QDateEdit::setDate()
从QDateTime::currentDateTime()
获取