QGIS 프로그램 시작시 Python 콘솔을 표시하는 방법


10

프로그램을 시작할 때 파이썬 콘솔을 직접 여는 방법이 있는지 궁금합니다. Python 콘솔에 대한 바로 가기를 설정할 가능성이 있지만 QGIS 프로그램 시작에 대한 이러한 옵션을 찾을 수 없습니다.


QGIS가 시작될 때 실행되는 파일을 작성하는 방법이 있으며, 이와 같은 사용자 정의 설정에 도움이 될 수 있습니다. 문제는 콘솔을 프로그래밍 방식으로 열 수 있는지 여부입니다. 그렇게 할 수 있는지 아십니까?
BritishSteel

API에서 검색했지만 파이썬과 관련된 유일한 클래스는 QgsPythonRunner이며 콘솔은 아닙니다.
Martin

답변:


12

매크로 사용

프로젝트열 때 QGIS Python 콘솔을 시작할 수 있습니다 QGIS->Project->Project Properties.

def openProject():
    import qgis     
    qgis.utils.iface.actionShowPythonDialog().trigger()

다음과 같은 방법으로 프로젝트에서 매크로를 활성화하십시오. Settings->Options->General->Enable macros: Always


startup.py 사용

QGIS를 시작할 때 QGIS Python 콘솔을 열 려면 startup.py파일을 작성하고 (존재하지 않는 경우) 파일을 %APPDATA%\QGIS\QGIS3\작성하십시오.

import qgis     
qgis.utils.iface.actionShowPythonDialog().trigger()

편집 (@Miro의 후속 질문을 해결하기 위해)

Miro가 지적했듯이 QGIS Python Console이 열려 있으면 qgis.utils.iface.actionShowPythonDialog().trigger()닫을 것이므로 QGIS 플러그인을 작성하는 경우 Python Console이 열려 있는지 (표시) 여부를 아는 것이 좋습니다.

다음 코드를 실행하여 Python 콘솔이 보이지 않는지 알 수 있습니다.

from qgis.PyQt.QtWidgets import QDockWidget
pythonConsole = iface.mainWindow().findChild(QDockWidget, 'PythonConsole')
if not pythonConsole or not pythonConsole.isVisible():
    from qgis.utils import iface
    iface.actionShowPythonDialog().trigger()

콘솔이 이미 열려 있는지 확인하는 방법이 있습니까? 그것이 있다면 trigger ()가 닫을 것이기 때문입니다.
Miro

@Miro, 방법이 있습니다! 지침에 따라 답변을 편집했습니다.
Germán Carrillo

1
2.18에서는 프로젝트 매크로가 작동하지만 시작 스크립트가 콘솔을 열지 못합니다.
underdark
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.