передача стандартного вывода в QLabel в Qt 4.7

Я пытаюсь обернуть код C++ колледжей в виджет Qt.

Однако стандартный вывод его программ обязательно нужно просматривать. На данный момент я предполагаю, что создам графический интерфейс и открою QProccess, который будет запускать его программу (затем отправлять команды по этому каналу).

Итак, мой вопрос заключается в том, чтобы в любом случае прочитать стандартный вывод этой программы и отобразить его в qlabel или что-то подобное (т.е. какие функции я должен изучать)?


person Bobak Hashemi    schedule 17.01.2011    source источник


Ответы (1)


По мере выполнения процесса объект QProcess выдает сигнал readyReadStandardOutput(), как только поскольку есть данные, доступные на стандартном выходе. Вы можете подписаться на сигнал, вызвать readAllStandardOutput() из подключенного слота и добавить (не заменить) данные в вашем виджете. Если вам не нужно, чтобы данные отображались сразу после их поступления, вы можете просто дождаться завершения процесса, а затем прочитать все выходные данные за один раз.

person Lukáš Lalinský    schedule 17.01.2011
comment
Идеально звучит, как раз то, что мне нужно! - person Bobak Hashemi; 17.01.2011