程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程解疑 >> checkbox-QT creator Label控件時間問題

checkbox-QT creator Label控件時間問題

編輯:編程解疑
QT creator Label控件時間問題

在label中獲取到當前系統的時間之後,checkbox有兩個選項 一個是小時,一個是分鐘
判斷
if(ui->checkbox_xs->ischecked())
{
如果小時被勾選之後,button按鈕是怎樣去 在這裡實現對label時間中的小時進行時間更改。
時間格式yyyy-MM-dd hh:mm:ss dddd 就只要對hh進行更改

求詳細的思路,以及所需的代碼

最佳回答:


兩個button分別叫pushButton_2和pushButton_3
頭文件:

 #ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QMainWindow>

namespace Ui {
class MainWindow;
}

class MainWindow : public QMainWindow
{
    Q_OBJECT

public:
    explicit MainWindow(QWidget *parent = 0);
    ~MainWindow();

private:
    Ui::MainWindow *ui;

public slots:
    void SlotAdd();
    void SlotSub();
};

#endif // MAINWINDOW_H

CPP文件:

 #include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QDateTime>

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);
    connect(ui->pushButton_2, SIGNAL(clicked()), this, SLOT(SlotAdd()));
    connect(ui->pushButton_3, SIGNAL(clicked()), this, SLOT(SlotSub()));
}

void MainWindow::SlotAdd()
{
    QString label_string = ui->label->text();
    QDateTime label_time = QDateTime::fromString(label_string, "yyyy-MM-dd hh:mm:ss zzz");
    if(ui->checkBox->isChecked())
        label_time = label_time.addSecs(60 * 60);
    else
        label_time = label_time.addSecs(60);
    ui->label->setText(label_time.toString("yyyy-MM-dd hh:mm:ss zzz"));
}

void MainWindow::SlotSub()
{
    QString label_string = ui->label->text();
    QDateTime label_time = QDateTime::fromString(label_string, "yyyy-MM-dd hh:mm:ss zzz");
    if(ui->checkBox->isChecked())
        label_time = label_time.addSecs(-60 * 60);
    else
        label_time = label_time.addSecs(-60);
    ui->label->setText(label_time.toString("yyyy-MM-dd hh:mm:ss zzz"));
}

圖片說明

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved