Таймер работает только в таком виде:код:Код:#include "mainwindow.h"#include "ui_mainwindow.h"MainWindow::MainWindow( QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow){ ui->setupUi(this); QTimer *ptimer = new QTimer(this); ptimer->start(500); connect(ptimer,SIGNAL(timeout()),this,SL OT(PrintMess()));}...void MainWindow::PrintMess(){ ui->textEdit->append(tr(MyMessage.toAscii()));}...Т.е . создавать и запускать его надо в конструкторе формы.Если я запускаю таймер в другом месте, компилятор ругается, что переменная не объявлена.Добавляю в mainwindow.hКод:...private: Ui::MainWindow *ui; QTimer *ptimer;... Запускаю в другом месте. Тогда программа сваливается с ошибкой.Конечно можно разрешать исполнение события таймера по флагу, но если будет несколько таймеров, то это неудобно.Как правильно запустить и остановить таймер?
|