Я новичок в программировании Qt, я сделал простой gui с помощью одной кнопки. В основном я написал программу в C++, теперь я хочу сделать Gui для моего проекта. Я хочу отобразить вывод всей инструкции printf в моем gui. printf, показывающие их вывод в консоли, но я хочу добавить что-то похожее на консоль в моем gui, чтобы всякий раз, когда я вызываю printf, он показывает его результат в gui. Не могли бы вы посоветовать мне, как я могу это сделать?
Вы можете использовать QLabel для отображения вывода в графическом интерфейсе.
Каждый раз, когда вы вызываете printf, вместо этого вы вызываете setText (...). Теперь текст отладки будет отображаться в текстовой метке в вашем графическом интерфейсе.
Если вы хотите, вы можете добавить несколько QLabels для разных отладочных выходов.
РЕДАКТИРОВАТЬ:
Это также может представлять интерес.
Я нашел ответ на свой вопрос, я использовал textbrowser в gui и создаю функцию, которую я вызываю для печати своих данных в gui. Я не могу показать картинку моего ги, потому что у меня меньше репутации.
вот функция, которую я использовал для печати.
void MainWindow::print(const QString &input){
data_lab += input;//to display all data in stream
ui->label->setText(input);
ui->textBrowser->setText(data_lab);
}
и вот вызов функции из основного.
w.print("hellok\n");
w.print("l\n");
Надеюсь, это поможет кому-то вроде меня.
ui->textBrowser->append(input);
используйте QProcess, запустите свою программу CLI и используйте readData/writeData, чтобы получить информацию и поместить ее в QTextEdit