2013-08-08 6 views
0

내 GUI에서 QProcess::execute(QString);에 의해 실행되는 한 프로세스의 진행 상황을 보여주는 진행률 막대를 작성하고 싶습니다.QProcessBar in Qt

문제가 발생하면 GUI가 멈추고 그 안에 아무 것도 할 수 없습니다.

적어도 GUI 뒤에 어떤 일이 일어나고 있는지 보여주는 로딩 이미지를 보여주고 싶습니다.

답변

2

실행보다는 QProcess::start을 사용해야합니다. 실행은 프로세스가 종료 될 때까지 차단됩니다.

QProcess *myProcess = new QProcess(parent); 
myProcess->start(program, arguments); 

자세한 내용은 QProcess 설명서를 확인하십시오.

0

사실 당신은 별도의 스레드를 사용할 필요가 없습니다 QFuture

+1

에서 봐, 당신의 GUI가 걸려있는 경우 스레드를 사용합니다. 프로세스를 비동기 적으로 시작하고 QProcess의 신호를 사용하여 상태 변화에 대한 통지를 얻을 수 있습니다. – dunc123