Qt 的一段代码尝试中,希望时间能出现在label上,但是却是一直都不显示 10C
#include "widget.h"
#include "ui_widget.h"
#include<QTime>
#include<iostream>
#include<QString>
#include<QSettings>
#include<QDebug>

using namespace std;

#define CONFIG_FILE "config.ini"

Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Widget)
{
    ui->setupUi(this);

}

Widget::~Widget()
{
    delete ui;
    time();
    combination();



}

void Widget::time(){

    // The QDateTime class provides date and time functions.
    // 调用QDatetime里面的一个函数,赋给另一个QDatetime的类型
    QDateTime current_date_time = QDateTime::currentDateTime();
    // 初始化三个String类型

   cout << "当前的时间为:" <<current_date_time.toString("yyyy-MM-dd_hh.mm.ss").toLocal8Bit().data();
   cout<< "最近的时间为:"<< get_min(current_date_time);

    ui->lineEdit->setText(current_date_time.toString("yyyy-MM-dd_hh.mm.ss").toLocal8Bit().data());

}

int Widget::get_min(QDateTime curTime)
{
    QSettings *configIniReadWrite = new QSettings(CONFIG_FILE, QSettings::IniFormat);
    int lastTime = configIniReadWrite->value("/main/last_time").toInt();// 将值转化成整形
    //cout<< "上次的时间为:"<< lastTime;
    configIniReadWrite->setValue("/main/last_time", curTime.toTime_t());
    delete configIniReadWrite;

    int minDiff = (curTime.toTime_t()-lastTime) / 60 + 1;//???

    return minDiff;
}

void Widget::combination(){
    QString a = "hufengxiang";

    QStringList b;
    b << "haha" << a;// 这个是QString下特殊的操作

    qDebug()<<"合并之后:" <<b;
}

Pfeffer
Pfeffer 需要放到 h文件的ui的 ui->setupUi(this);所在的文件夹下面
7 个月之前 回复

2个回答

void Widget::time();在你这代码中,只有析构函数调用,其他没看到调用,所以不会显示时间,建议你用个计时器(QTimer)来调用。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐