Как каждую секунду к label прибавлять какое то значение qt?

136
17 ноября 2020, 11:30

Есть окно MainWindow в котором есть label_1 и label_2 в label_1 каждую секунду должно прибавляться значение label_2. К примеру в label_1 значение 0 а в label_2 значение 1 и каждую секунду к label_1 прибавляется label_2.

// mainwindow.cpp

#include "mainwindow.h"
#include "ui_mainwindow.h"
MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);
}
MainWindow::~MainWindow()
{
    delete ui;
}
Answer 1

Используйте QTimer

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);
    timer = new QTimer(this);
    timer->setInterval(1000);
    connect(timer, SIGNAL(timeout()), this, SLOT(updateLabel()));
    timer->start();
}
void MainWindow::updateLabel()
{
    QString value1 = ui->label_1->text();
    QString value2 = ui->label_2->text();
    ui->label_1->setText(QString::number(value1.toInt() + value2.toInt()));
}
Answer 2

Вероятно, имелось ввиду вот так:

void MainWindow::updateLabel()
{
    QString value1 = ui->label_1->text();
    QString value2 = ui->label_2->text();
    ui->label_1->setText(QString::number(value1.toInt() + value2.toInt()));
}

Или вот так:

void MainWindow::updateLabel()
{
    int value1 = ui->label_1->text().toInt();
    int value2 = ui->label_2->text().toInt();
    ui->label_1->setText(QString::number(value1 + value2));
}
READ ALSO
Считывание чисел до конца строки с помощью cin.peek()

Считывание чисел до конца строки с помощью cin.peek()

Мне нужно считать числа до конца строки, я реализовал это с помощью cinpeek():

123
CoInitializeEx и проблема с PeekMessage

CoInitializeEx и проблема с PeekMessage

В документации WinAPI к функции PeekMessageW сказано:

127
Защита Python-keras от просмотра исходников

Защита Python-keras от просмотра исходников

Всех приветствуюУ меня появился очень странный вопрос, но:

128
Обмен сигналами между потоками

Обмен сигналами между потоками

Запускаются два потокаПотокам на выполнение даётся одна и та же функция

123