Форум вопросов и ответов

Форум вопросов и ответов (https://www.otvetnemail.ru/)
-   Продолжение старого архива (https://www.otvetnemail.ru/prodolzhenie-starogo-arhiva-804/)
-   -   [solved]QGraphicsItem update from thread (https://www.otvetnemail.ru/prodolzhenie-starogo-arhiva-804/solved-qgraphicsitem-update-thread-358466/)

Guest 30.09.2011 21:06

[solved]QGraphicsItem update from thread
 
subjпытаюсь прикрутить к QGraphicsItem поток чтобы тот вызывал по нужде перерисовку QGraphicsItem, но судя по всему из потока доступ к QGraphicsItem не выйдет. говорят надо как то прикрутить посыл сигнала из потока в главный поток приложения и там уже вызывать отрисовку.но что то не работает посыл сигнала:QGraphicsItem m_ChipMainWindow widget;код потокаvoid Thread::run(){while (!m_stopped) {QColor cc;cc.setRgb(qrand()/(double)RAND_MAX*256,qrand()/(double)RAND_MAX*256,qrand()/(double)RAND_MAX*256,127);m_Chip->color=cc;emit itemRepaint(m_Chip);QTest::qSleep(200); } m_stopped = false;}перед запуском потокаQObject::connect(&threadA,SIGNAL(i temRepaint(Chip)),widget,SLOT(updateItem (Chip)));в классе потокаsignals:void itemRepaint(Chip* chip);в MainWindowpublic slots:void updateItem(Chip *item);void MainWindow::updateItem(Chip *item){//сюда не попадаетitem->update(item->boundingRect());}**сделал демку с мультипоточностью и отрсиовкой Qgrapicsitem из потоков с передачей сигналов о перерисовке.кому интересно приложено.


Часовой пояс GMT, время: 00:06.


© www.otvetnemail.ru - Форум вопросов и ответов.