2 qq 22840743 qq_22840743 于 2016.03.22 14:56 提问

QT creator Label控件时间问题

在label中获取到当前系统的时间之后,checkbox有两个选项 一个是小时,一个是分钟
判断
if(ui->checkbox_xs->ischecked())
{
如果小时被勾选之后,button按钮是怎样去 在这里实现对label时间中的小时进行时间更改。
时间格式yyyy-MM-dd hh:mm:ss dddd 就只要对hh进行更改

求详细的思路,以及所需的代码

3个回答

qq423399099
qq423399099   Ds   Rxr 2016.03.22 16:51
已采纳

两个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"));
}

图片说明

qq_22840743
qq_22840743 非常感谢!
2 年多之前 回复
qq423399099
qq423399099   Ds   Rxr 2016.03.22 15:39

LZ指的button按钮时类似上下键那种吗,如果小时被勾选后,按一下上button就加一个小时,使得label显示的时间在原来的基础上加一小时?

qq423399099
qq423399099 回复qq_22840743: OK,稍等,我等会重新开个回复框
2 年多之前 回复
qq_22840743
qq_22840743 回复小灸舞:非常感谢,但是新手。对代码也还是不太熟悉 能对第二种方法 写一下代码么
2 年多之前 回复
qq423399099
qq423399099 回复qq_22840743: 一种可以用字符串截取的方法,对应位置加1减1以后(注意进位借位),然后将新的字符串拼接好,然后显示在label上。或者将label的显示的时间转换为时间类,然后操作,操作完再更新label
2 年多之前 回复
qq_22840743
qq_22840743 回复小灸舞:一共有两个按钮,一个是增加按钮,一个是减少按钮。在增加按钮和减少按钮上面还有两个checkbox,一个是是小时,一个是分钟,只有勾选了上面两个按钮其中的一个,在点击下面的pushbutton按钮才能对label里面的时间进行更改
2 年多之前 回复
qq423399099
qq423399099 回复qq_22840743: 点一下按钮就让label显示的时间加一小时或者加一分钟?
2 年多之前 回复
qq_22840743
qq_22840743 谢谢你的回答,但是我的button按钮就是一般的那种button按钮,qpushbutton
2 年多之前 回复
qq_22840743
qq_22840743   2016.03.22 17:19

真的是非常感谢!!!!!

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
Qt使用Label控件显示图片的三种方法
今日学习Qt练习到使用Label显示图片,废话不多说,献上方法。 //1、 ui->label->setPixmap(QPixmap(":/desketop.png")); 控件是直接拖过去的,QPixmap 需要加头文件 #include 图片放在项目文件夹下。 //2、 QPixmap pixmap(":/desketop.png");
QtDesigner控件使用说明
QtCreator的使用在python中是新建QT-&amp;amp;amp;gt;qt设计师界面类-&amp;amp;amp;gt;widget-&amp;amp;amp;gt;选择路径, 又或者新建QT-&amp;amp;amp;gt;py designer form-&amp;amp;amp;gt;main window 而不是cpp中的新建项目-&amp;amp;amp;gt;Qt Widgets Application-&amp;amp;amp;gt;选择创建路径,这时候next可能会出现
玄学之 qt statusbar中添加Qlabel
今天尝试用qt主窗口界面里面自带的statusBar来显示信息先声明一个全局变量QLabel *info_label; 在函数中操作 info_label=new QLabel(&quot;file info&quot;); ui-&amp;gt;statusBar-&amp;gt;addWidget(info_label); info_label-&amp;gt;setText(fileNam...
用qt的label控件显示mjpg-streamer中的视频画面
###在stitip项目中需要用Qt编写一个带界面的实现实时监控的程序,所以准备学习Qt的开发,本文档记录的是是学习Qt过程中的笔记,方便自己复习使用。###   2016.9.2 目标:今天想要实现在label中显示自己定义的一张图片,并且自动将大小设置为图片的宽和高。 一、直接添加图片 1.参考Qt的帮助文档,可支持的类型,即可以直接读取并显示的格式有BMP、GIF、JPG、JPEG
Qt 窗体使用 label 标签插入静态图片
最近在做毕业设计,上位机软件用的Qt,界面当中需要加入学校校徽,结果百度了n多种方法,有用QPixmap的:1 QPixmap myPix(&quot;./school.jpg&quot;); 2 ui-&amp;gt;label_8-&amp;gt;setPixmap(myPix); 3 ui-&amp;gt;label_8-&amp;gt;setScaledContents(true); 4 ui-&amp;gt;lab...
Qt5 截图 截取控件、窗口图
主要用到QScreen 类截取窗口  QPixmap 保存图片在程序中添加头文件#include &amp;lt;QScreen&amp;gt; #include &amp;lt;QPixmap&amp;gt;代码 QScreen *screen=QGuiApplication::primaryScreen(); QPixmap pixmap=screen-&amp;gt;grabWindow(videoWidget-&amp;gt...
QT creator 设计创建工具栏
一、必要条件,创建工具栏之前需要创建好菜单栏,因为工具栏是菜单栏里面部分功能的快捷按钮 二、此时在界面编辑窗口的最下方有一个ACTION EDITOR 窗口,里面显示了所有的菜单内容 三、双击编辑相应的栏目,添加ICON图标,然后将其拖入到工具栏中 4、这样就完工了,其实还是很简答的。不过还需要加上信号与槽的设置
Qt 图片适应QLabel控件大小(饱满缩放和按比例缩放)
直接上代码: QImage Image; Image.load("d:/test.jpg"); QPixmap pixmap = QPixmap::fromImage(Image); int with = ui->labPic->width(); int height = ui->labPic->height(); QPixmap fitpixma
Qt label显示图片
QT显示图片的方法有很多 大致为 label上显示 直接画出来 容器显示   1---------------显示gif图片(label上显示) http://archive.cnblogs.com/a/2053701/   在QT中要显示GIF图片,不能通过单单的添加部件来完成. 还需要手动的编写程序. 工具:QT Creator 新建一个工程,我们先在d
QT5中如何自定义窗口部件
提升法 Qt Assistance:Using Custom Widgets with Qt Designer eg.(定义一个新的QLable部件) 1、定义一个类 class Label : public base, public QLabel //可以支持多重继承 2、在qt creator中打开ui编辑器,拖曳一个QLable兑现,提升,输入提升的类名Label,勾选全部包含,添