QT creator从另一个时区(不是本地时区)获取时间

QT creator get the time from another time zone (not local time zone)

我试图找到如何获取当前时间的方法,但是,我想获取另一个时区的时间。我试着玩弄它,甚至试图简单地在当前时间上增加几个小时,以弥补我想要得到的东西,但效果不佳

MainWindow::MainWindow(QWidget *parent)
    : QMainWindow(parent)
    , ui(new Ui::MainWindow)
{
    ui->setupUi(this);
    QTimer *timer = new QTimer(this);
    connect(timer, SIGNAL(timeout()),this, SLOT(showTime()));
    timer->start();

    QDate date = QDate::currentDate();
    QString dateTimeText = date.toString();
    ui->date->setText(dateTimeText);


}

void MainWindow::showTime()
{
    QTime time = QTime::currentTime();
    QString time_text = time .toString("hh : mm : ss");
    if((time.second() % 2) == 0)
    {
        time_text[3] = ' ';
        time_text[8] = ' ';
    }
    ui->Digital_clock->setText(time_text);

}

要获得不同时区的 QTime,您可以根据具有特定偏移量的 currentTime() 创建新的 QTime 对象。

为此,您只需调用 addSecs(int) 函数,如下所示:

QTime currentTimeZoneTime = QTime::currentTime(); // Your time zone current time
QTime differentTimeZoneTime = localTime.addSecs(3600); // Add +1 hour to your time zone current time