我正试图让a QDateEdit在允许QCalendarWidget时显示(而不是仅仅点击向下箭头).例如,在我班上的某个地方,我应该可以说:
ui.datepicker.showCalendar()
Run Code Online (Sandbox Code Playgroud)
它应该加载日期选择器正下方的日历.
看起来我需要子类QDateEdit,因为这不起作用:
QDateEdit *de = new QDateEdit();
de->calendarWidget()->show();
Run Code Online (Sandbox Code Playgroud)
当你通过Qt的QDateTimeEdit.cpp源代码时,我也试过发送键盘命令,但似乎我的键盘快捷键被禁用了.
关于我要对子类做什么以使其工作的任何想法?我想的是:
class MyDateEdit : QDateEdit
{
Q_OBJECT
protected:
void mouseEvent(QEvent *event) {
this.calendarWidget().show();
}
};
Run Code Online (Sandbox Code Playgroud)
但唉,似乎也没有编译或正常工作.