2016-10-25 1 views
0

QDateTimeEditでは、文字列によってフォーマットをsetDisplayFormat(const QString &format)で設定することはできますが、文字列の代わりにQt::DateFormat列挙型を受け取る関数はありません。Qt :: SystemLocaleShortDateをQDateTimeEditで使用するには?

私の目標は、ユーザーのロケールに応じてQDateEditの書式を設定することです。 Qt :: SystemLocaleShortDateに使用される文字列フォーマットをfromStringtoStringにフェッチすることはできますが、見つけられないことがあります。

+1

マック で次のようになります意味:http://doc.qt.io/qt-5/qlocale.html#timeFormat? – Hayt

+0

私が探しているものを正確に見ています。ありがとうございました – johngull

答えて

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(); 
} 

それはenter image description here

関連する問題