Как увидеть команды печати через Python Script при программировании плагина для QGIS?

13

Есть ли способ, при котором пользовательский плагин, созданный для QGIS, может появляться вместе с оболочкой Python при запуске плагина, как экран отладки? Я спрашиваю это, чтобы узнать, есть ли способ увидеть команды печати через Python Script при программировании плагина для QGIS.

Нечего сказать
источник
Этот вопрос, кроме тега pyqgis, похоже, не имеет отношения к ГИС. Не могли бы вы перефразировать его, чтобы сказать, почему вы считаете, что это вопрос ГИС, а не вопрос, более подходящий для StackOverflow , пожалуйста?
PolyGeo
Я редактировал, как насчет сейчас?
NothingToSay
1
Выглядит намного лучше, но я также превратил ваш заголовок в вопрос и добавил несколько дополнительных тегов, чтобы помочь привлечь нужную аудиторию.
PolyGeo

Ответы:

13

Вы отправляете сообщения журнала в окно журнала QGIS, используя:

QgsMessageLog.logMessage(message, tag, level)

Тег - это заголовок вкладки, который будет отображаться в окне журнала QGIS. Уровень - это уровень сообщения (по умолчанию 0).

Например:

QgsMessageLog.logMessage('My message', 'MyPlugin')

Подробности смотрите в документации по API QGIS для QgsMessageLog.

Окно журнала можно сделать видимым из меню View-> Panel-> Log Messages.

Другой способ - создать класс, который захватывает стандартный вывод и направляет его в окно журнала в вашем плагине (это делает плагин Script Runner). Вывод всех операторов печати будет отображаться в окне журнала, хотя этот метод гораздо сложнее, если вы просто хотите отобразить несколько сообщений во время разработки. Вы должны быть осторожны, так как все операторы печати из других плагинов будут отправлены вашему плагину, если вы не захватите и не восстановите стандартный вывод.

gsherman
источник