Раньше было так, что в своем потоке на виджет рисовать нельзя. Сейчас так же? Накидал простецкий пример (сильно не пинать)Код:#include #include #include #include #include #include class MainWidget : public QWidget{public: MainWidget(QWidget* parent = 0) :QWidget(parent) { } virtual ~MainWidget() { }};class QGThread : public QThread{ public: QGThread(QWidget* w) { pw = w; } void run() { QPainter p(pw); p.drawLine(0,0,100,100); } private: QWidget* pw;};int main(int argc, char* argv[]){ QApplication app(argc, argv); MainWidget mw; QGThread thread(&mw); mw.show(); thread.start(); return app.exec();};в output выдало конечно:ЦитироватьQPainter::begin: Paint device returned engine == 0, type: 1Развейте сомнения, сейчас по прежнему нельзя рисовать в виджете из другого потока? Или есть способ?пс: про метод с рисованием в QImage, и потом его отрисовку знаю.
|