ciao!
risolto un problema, se ne crea un altro.
sto provando a vedere in giro, ma non sto capendo bene.
allora, all'avvio di una finestra, dovrei eseguire delle oeprazioni in background.
alla fine di ogni operazione, aggiornare dei componenti della finestra.
per le operazioni in background avrei fatto una cosa del genere (per ora una cosa molto easy giusto per capire meglio):
poi nel costruttore della finestra:codice:#ifndef STARTRESIZING_H #define STARTRESIZING_H #include <QRunnable> #include <QPlainTextEdit> #include <QPushButton> #include <QThread> #include <QDebug> class StartResizing : public QRunnable { public: explicit StartResizing(QVector<QString> list, int width, int height, QPlainTextEdit* textArea, QString dir, QPushButton* btn); virtual ~StartResizing(); void run(); protected: QVector<QString> list; int width; int heigh; QPlainTextEdit* textArea; QString dir; QPushButton* btn; }; #endif // STARTRESIZING_H #include "startresizing.h" StartResizing::StartResizing(QVector<QString> list, int width, int height, QPlainTextEdit *textArea, QString dir, QPushButton *btn) { this->list = list; this->width = width; this->heigh = height; this->textArea = textArea; this->dir = dir; this->btn = btn; } void StartResizing::run() { for(int i = 0; i < list.length(); i++) { textArea->appendPlainText(list[i]); } } StartResizing::~StartResizing() { }
ottenendo diversi errori che ancora non capisco molto bene.codice:ResizeWindow::ResizeWindow(QVector<QString> list, int width, int height, QString startDir, QWidget *parent) : QScrollArea(parent), ui(new Ui::ResizeWindow) { ui->setupUi(this); QRunnable* runnable = new StartResizing(list, width, height, ui->txtArea, startDir, ui->btnClose); QThreadPool::globalInstance()->start(runnable); }
qualcuno ha qualche suggerimento da darmi in proposito??

Rispondi quotando