QWizard 하위 클래스가 있는데 일부 페이지에서는 메서드를 호출하는 데 오랜 시간이 걸리므로 QProgressBar를 넣을 수 있습니다. 내 첫 번째 생각은 QTimer를 만들고 updateProgressBar를 호출하는 메서드를 설정하는 것이지만 마법사와 동일한 스레드에서 실행되므로 QWizard가 사용 중이 아닐 때만 업데이트됩니다. 어떻게 이것을 다른 스레드에서 실행할 수 있습니까?다중 스레드 QWizard에서 QProgressBar를 업데이트하는 방법은 무엇입니까?
0
A
답변
0
장기 실행 작업을 QThread의 하위 클래스 인 작업자 스레드로 옮깁니다. 작업자 스레드가 진행률 (알 수있는 경우 완료율)을 나타내는 신호를 내보내고 해당 신호를 진행률 표시 줄의 setValue (int) 슬롯에 연결하십시오.
0
감사합니다. QWizard 클래스에서 QThread 개체를 만들고 moveToThread를 호출하여 개체를 스레드로 이동하지 않았습니다. 예 : http://www.developer.nokia.com/Community/Wiki/How_to_move_a_QObject_to_a_thread
서브 클래스 QThread? – friendzis