如何在QDateTimeEdit中使用Qt :: SystemLocaleShortDate?

时间:2016-10-25 10:01:07

标签: c++ qt

在QDateTimeEdit中,可以使用setDisplayFormat(const QString &format)按字符串设置格式,但我看不到接收Qt::DateFormat枚举而不是字符串的函数。

我的目标是根据用户区域设置确定QDateEdit的格式。 也许有可能在fromStringtoString中获取用于Qt :: SystemLocaleShortDate的字符串格式,但我找不到它。

1 个答案:

答案 0 :(得分:1)

您可以使用此代码设置显示格式。

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    QDateTimeEdit w;
    QLocale currentLocale = QLocale::system();
    w.setDisplayFormat( currentLocale.dateFormat( QLocale::ShortFormat ) + " " + currentLocale.timeFormat( QLocale::ShortFormat ) );
    w.setDateTime( QDateTime::currentDateTime() );
    w.show();
    a.exec();
}

在Mac中看起来像这样 enter image description here