答えて
を試してみてください、あなたが何らかの形で実行時にそれを見つける必要がある、またはあなたのソースコードのためですか? 2番目のケースの場合はthis listを使用できます。
はいこの例
http://www.developer.nokia.com/Community/Wiki/How_to_get_list_of_Time_Zones_in_Qt_Maemo_application
注これはQtのネイティブのソリューションではありませんので、すべてのプラットフォームに移植できません。 – teukkam
Moi、私はそれを知っています:)しかし、abhishekにアプローチする正しい方法を教えてください – Programmer
ICU Libraryは移植性があり、Qtアプリケーションで使用できます。 (これにはC/C++ APIがあります)。多くの他の機能の中で、システムによって知られているタイムゾーンを列挙できるTimeZone
クラスがあります。
あなたが必要とするすべては、単純なリストがある場合、それはやり過ぎかもしれませんが、あなたはこれらのタイムゾーンを使用し、他のメタデータ(ロケールなど)と対話することが予想される場合、これは次のようになります良い解決策。
私は、特定のリンクからライブラリを入手する場所を知っていません。シンビアンプロジェクトにこれらのライブラリを直接追加する方法はありますか? – abhishek
ダウンロードページ:http://site.icu-project.org/download。このページには、バイナリとソースのダウンロードへのリンクと、Subversionリポジトリのアドレスが含まれています。私はSymbian環境での経験がないので、私はどんな詳細も提供できません。 ICUライブラリは通常のC/C++ライブラリです。ヘッダーをインクルードし、ライブラリへのパスをリンカに追加します。 Symbian固有のヘルプの新しい質問を作成することができます。 –
hereを記述したqt5.2の新しいQTimeZoneクラスを使用した別の例があります。
彼らはすべての既知のタイムゾーンに夏時間などの特別な設定を加えたカスタムウィジェットを作成します。
基本的なコードがある投稿:
#include <QDebug>
#include <QByteArray>
#include <QDateTime>
#include <QList>
#include <QTimeZone>
#include "widget.h"
#include "ui_widget.h"
Widget::Widget(QWidget *parent) :
QWidget(parent),
ui(new Ui::Widget)
{
ui->setupUi(this);
// Fill in combo box.
QList<QByteArray> ids = QTimeZone::availableTimeZoneIds();
foreach (QByteArray id, ids) {
ui->timeZoneComboBox->addItem(id);
}
// Connect combo box to slot to update fields.
connect(ui->timeZoneComboBox, SIGNAL(currentIndexChanged(int)),
SLOT(UpdateFields()));
// Update fields for initial value.
UpdateFields();
}
void Widget::UpdateFields() {
QByteArray id = ui->timeZoneComboBox->currentText().toLatin1();
QTimeZone zone = QTimeZone(id);
// Fill in fields for current time zone.
if (zone.isValid()) {
ui->descriptionLabel->setText(tr("<b>Description:</b> ") + id);
ui->countryLabel->setText(tr("<b>Country:</b> ") +
QLocale::countryToString(zone.country()));
ui->hasDaylightTimeCheckBox->setChecked(zone.hasDaylightTime());
ui->isDaylightTimeCheckBox->setChecked(
zone.isDaylightTime(QDateTime::currentDateTime()));
ui->hasTransitionsCheckBox->setChecked(zone.hasTransitions());
QDateTime zoneTime = QDateTime(
QDate::currentDate(), QTime::currentTime(), zone).toLocalTime();
ui->dateEdit->setDate(zoneTime.date());
ui->timeEdit->setTime(zoneTime.time());
QTimeZone::OffsetData offset = zone.nextTransition(
QDateTime::currentDateTime());
if (offset.atUtc != QDateTime()) {
ui->nextTransitionLabel->setEnabled(true);
ui->nextTransitionLabel->setText(
tr("<b>Next transition:</b> %1").arg(offset.atUtc.toString()));
} else {
ui->nextTransitionLabel->setEnabled(false);
ui->nextTransitionLabel->setText(
tr("<b>Next transition:</b> none"));
}
}
}
- 1. vb.net 2003でタイムゾーンリストを取得
- 2. Magento 2ですべてのタイムゾーンリストをアレイとして取得する方法
- 3. Qt/C++はすべてのアプリケーションウィンドウのXidを取得します
- 4. Qtモデルからすべてのデータを取得する方法
- 5. pyside/pyqt/qtのQWidgetのすべての子コンポーネントを取得するには?
- 6. QT - すべてのQPushButtonのリストを取得
- 7. タイムゾーンリストの問題
- 8. qtを使ってレジストリからすべてのスタートアッププロセスのリストを取得するには?
- 9. QTでdriverNameとNetwork Printerのポートを取得するには?
- 10. QTでトップ(ベース)のparentWidgetを取得するには?
- 11. Qtでファイルのバージョンを取得するには?
- 12. Javaで.classのすべてのプロパティを取得するには?
- 13. javascriptですべてのタイムゾーンのリストを取得するには
- 14. Qt 5.6で高dpiでシャープなUIを取得するには?
- 15. MimeMessageですべてのmimepartを取得するには?
- 16. var_dumpですべてのelemetsを取得するには?
- 17. asp.net mvcですべてのURLパラメータを取得するには?
- 18. すべてのevent_memberをページングで取得するには?
- 19. sitecoreですべてのメディアアイテムを取得するには?
- 20. powershellですべての証明書を取得するには?
- 21. cts:searchですべての結果を取得するには?
- 22. jdk9でsun.fontのクラスをすべて取得するには
- 23. LaravelですべてのリクエストURLを取得するには
- 24. lucene.netですべてのヒットを取得するには
- 25. Asp.NET MVCですべてのフィールドフォームデータベースを取得するには?
- 26. Tensorflowですべてのコレクションを取得するには?
- 27. は、Facebookとの統合を取得するにはQt/Symbianの
- 28. Qtオブジェクトのサイズを取得する
- 29. qtでプロセス名を取得するには?
- 30. QT 4.5 - QGraphicsViewでQPainterデバイスを取得するには
私のソースコードは必要ですが、ユーザーがタイムゾーンを選択した場合、私のアプリはその標準で時間を表示する必要があります。どうやってやるの ? – abhishek
これを達成するには、おそらくいずれかの解決策が可能です。まれに、タイムゾーンが変更された場合、それらが使用している外部リソースに反映されることを前提として、ソースコードのタイムゾーンをハードコーディングする方が簡単なアプローチかもしれませんが、システムから取得することはメンテナンスを必要としないという利点があります。しかし、これは非常にまれな出来事である方法を見て、過度のように思えるかもしれません。 – teukkam