6
My Qt 응용 프로그램에 여러 스레드가 있습니다.QWidget :: repaint : 진행률 막대를 업데이트 할 때 재귀 페인트가 감지되었습니다.
검출 https://qt-project.org/forums/viewthread/24921 그러나 나는 왜 위젯 값을 막대 그래프에서 설정하는 것이 불법인지 이해하지 못합니다.는 QWidget :: 다시 그리기 : 중 하나는
ui
이 런타임 오류를 발생시키는class Interface : public QMainWindow
의 객체와void Interface::SyncUI() { QWidget* bar_widget = ui.tableWidget->cellWidget(0,4); QProgressBar* bar_widget2 = dynamic_cast <QProgressBar*> (bar_widget); bar_widget2->setValue((int)percentage); }
입니다
ui->SyncUI()
를 호출 내가 이걸 발견 재귀 재 페인트가
감사합니다.
[* QObject가 재 입력이지만 GUI 클래스, 특히 QWidget 및 모든 하위 클래스는 재진입 가능하지 않습니다. 주 스레드에서만 사용할 수 있습니다. *] (http://qt-project.org/doc/qt-5/threads-qobject.html) – thuga