Я пытаюсь написать графический интерфейс, который при нажатии кнопки либо запускает, либо останавливает процесс. В настоящее время мой код даже не запускает процесс, и я не понимаю, почему это так. Кнопка нажимается, и текст меняется, но процесс не выполняется, и сообщения об ошибках не появляются. Это код слота кнопки в объекте QMainWindow:
void clickedSlot(){
QString s = "Record";
//switch between record and stop
if(s!=((QPushButton*)sender())->text()){
((QPushButton*)sender())->setText("Record");
process->kill();
process->waitForFinished();
delete process;
}else{
((QPushButton*)sender())->setText("Stop");
process = new QProcess(this);
QString executable = "./record";
process->start(executable);
process->waitForStarted();
}
};
Любая помощь в том, почему QProcess не запускается и как его остановить после, будет принята с благодарностью. У меня есть #include в верхней части кода
waitForStarted
. Должно быть ложным, если процесс не удалось запустить. Убедитесь, что исполняемый файлrecord
находится в рабочем каталоге приложения. - person Pavel Strakhov   schedule 30.09.2013errorString()
. - person Frank Osterfeld   schedule 01.10.2013