LINUX.ORG.RU

Qt Creator вывод во встроенную консоль приложения?

 


1

1

Собственно все не пойму никак где отключить вывод в терминал(я хочу чтобы выводилось в вывод приложения(во встроенную консоль) а не в консоль!!! У меня Qt 5.1.1 + mingw компилятор на 8 венде) Захожу в Инструменты-Параметры-Среда-Основное...и не могу найти там где отключить вывод в консоль(там нету поля Терминал). Помогите плиз!!!



Последнее исправление: Daria (всего исправлений: 3)

В какую консоль нужно вывести — во встроенную в приложение, в отдельное приложение (Terminal на OSX, gnome-terminal или xterm на Ubuntu, cmd.exe на Windows) или ещё куда-то?

P.S. Есть ещё галочка в настройках проекта (пятый режим, Ctrl+5), во вкладке «Запуск» («Run»).

quiet_readonly ★★★★
()
Последнее исправление: quiet_readonly (всего исправлений: 2)
Ответ на: комментарий от Daria

Тогда надо установить соответствующий qMsgHandler и печатать всё строго через qDebug/qWarning/qCritical, а не через printf-подобные функции или iostream.

quiet_readonly ★★★★
()
Ответ на: комментарий от quiet_readonly

ну я только начинаю учить язык Си, можно попоробнее,ато я не поняла как все-таки вывести во встроен. ?

Daria
() автор топика
Ответ на: комментарий от Daria

Есть три возможности вывести в консоль:

  • Открывать второе окно консоли при запуске приложения, как это обычно происходит в Visual Studio. Это действует по дефолту, если у проекта в файле .pro есть строка «CONFIG += console». Но если её нет, то установка строки не поможет: настройки уже сняты и сохранены в другом месте. А именно - в режиме настройки проекта (хоткей Ctrl+5), на вкладке Запуск (или «Run») есть галочка «Запускать в терминале» (или «Run in terminal»)
  • Использовать панель вывода QtCreator (хоткей Alt+3), она умеет только выводить содержимое stdout/stderr и с помощью неё нельзя что-то ввести.
  • Перенаправить вывод, созданный с помощью функций qDebug/qWarning/qCritical, во встроенную консоль внутри окна самого приложения. Для этого нужно реализовать виджет консоли (что само по себе непросто), а затем использовать qInstallMsgHandler для перенаправления вывода, реализовав добавление текста в свой виджет консоли.

P.S. Проблема решена, но текст пусть останется для кого-то ещё.

quiet_readonly ★★★★
()
Последнее исправление: quiet_readonly (всего исправлений: 1)
Ответ на: комментарий от quiet_readonly

нашла в настройках проекта-отключила! вывелось ! СПАСибо! =) А чтобы автоматически всегда так было что надо сделать?

Daria
() автор топика
Ответ на: комментарий от Daria

Можно выбирать шаблон проекта, у которого «CONFIG += console» не ставится автоматически: например, «Пустой проект Qt». А можно создать свой шаблон, подправив xml файл и положив папку с данными шаблона проекта в «/home/$USER/.config/QtProject/qtcreator/templates/wizards/».

Вот тут пример двух шаблонов проекта (одна папка - один шаблон).

quiet_readonly ★★★★
()

На винфак!!!!!!!)))))))))

Deleted
()

Уж лучше встроенный терминал, ибо кэмэдэ.экзе - кака...

I-Love-Microsoft ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.