Как показать консоль Python при запуске программы QGIS
10
Интересно, есть ли способ открыть консоль Python непосредственно при запуске программы. Существует возможность установить ярлык для консоли Python, но я не могу найти такой вариант для запуска программы QGIS.
Есть способ написать файл, который запускается при запуске QGIS, что может быть полезно для таких настроек, как эти. Вопрос в том, можно ли программно открыть консоль или нет. Знаете ли вы, если вы можете сделать это?
BritishSteel
Я искал в API, но единственный класс, связанный с python - это QgsPythonRunner, который не является консолью.
Мартин
Ответы:
12
Использование макросов
Вы можете запустить консоль QGIS Python при открытии проекта , написав пару строк QGIS->Project->Project Properties:
Убедитесь, что вы включили макросы в свой проект, таким образом: Settings->Options->General->Enable macros: Always
Использование startup.py
Если вы хотите, чтобы консоль QGIS Python открывалась при запуске QGIS , вы можете создать (если он еще не существует) startup.pyфайл %APPDATA%\QGIS\QGIS3\и написать:
РЕДАКТИРОВАТЬ (чтобы ответить на следующий вопрос @Miro)
Как отметил Миро, если QGIS Python Console открыта, qgis.utils.iface.actionShowPythonDialog().trigger()закроет ее, поэтому, если мы пишем плагин QGIS, возможно, имеет смысл узнать, открыта ли Python Console (видимая) или нет.
Вы можете узнать, не видна ли консоль Python (а затем открыть ее), запустив этот код:
Ответы:
Использование макросов
Вы можете запустить консоль QGIS Python при открытии проекта , написав пару строк
QGIS->Project->Project Properties
:Убедитесь, что вы включили макросы в свой проект, таким образом:
Settings->Options->General->Enable macros: Always
Использование startup.py
Если вы хотите, чтобы консоль QGIS Python открывалась при запуске QGIS , вы можете создать (если он еще не существует)
startup.py
файл%APPDATA%\QGIS\QGIS3\
и написать:РЕДАКТИРОВАТЬ (чтобы ответить на следующий вопрос @Miro)
Как отметил Миро, если QGIS Python Console открыта,
qgis.utils.iface.actionShowPythonDialog().trigger()
закроет ее, поэтому, если мы пишем плагин QGIS, возможно, имеет смысл узнать, открыта ли Python Console (видимая) или нет.Вы можете узнать, не видна ли консоль Python (а затем открыть ее), запустив этот код:
источник