[QT] aplikacja okienkowa i wielowątkowość
Ostatnio zmodyfikowano 2017-10-31 17:36
Szybki_Jakub Temat założony przez niniejszego użytkownika |
» 2017-10-31 16:34:37 projekt mam, mam do Ciebie jeszcze jedną prośbę, chciałbym żeby po naciśnięciu przycisku zaczęło się wyświetlać "123" co 2 sekundy, natomiast jeśli nacisnę ponownie to przestanie wyświetlać i tak w kółko, jeżeli wsadzę tam pętle np do 100 wyświetleń to mimo naciśnięcia przycisku wątek nie zakończy się natychmiastowo tylko dokończy pętle, natomiast jeżeli pętla będzie nieskończona to nigdy nie zakończy swojej pracy mimo naciśnięcia przycisku |
|
mateczek |
» 2017-10-31 16:58:56 jeśli tylko chcesz wyświetlać co 2s. to spróbuj z timerem #ifndef MAINWINDOW_H #define MAINWINDOW_H
#include <QMainWindow> #include<QTimer> namespace Ui { class MainWindow; }
class MainWindow : public QMainWindow { Q_OBJECT QTimer * timer; public: explicit MainWindow( QWidget * parent = 0 ); ~MainWindow(); private slots: void on_pushButton_clicked(); void timUpdate(); private: Ui::MainWindow * ui; };
#endif
#include "mainwindow.h" #include "ui_mainwindow.h" #include<QDebug> 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( timUpdate() ) ); }
MainWindow::~MainWindow() { delete ui; }
void MainWindow::on_pushButton_clicked() { if( timer->isActive() ) { timer->stop(); } else timer->start(); }
void MainWindow::timUpdate() { qDebug() << "123"; } |
|
Szybki_Jakub Temat założony przez niniejszego użytkownika |
» 2017-10-31 17:36:50 udało się, tego właśnie mi brakowało dzięki !! |
|
1 « 2 » |