Jak wyświetlić konsolę Python podczas uruchamiania programu QGIS
10
Zastanawiam się, czy istnieje sposób, aby otworzyć konsolę Python bezpośrednio przy uruchomieniu programu. Istnieje możliwość ustawienia skrótu do konsoli Python, ale nie mogę znaleźć takiej opcji do uruchomienia programu QGIS.
Istnieje sposób na napisanie pliku, który zostanie wykonany po uruchomieniu QGIS, co może być pomocne w przypadku takich ustawień niestandardowych. Pytanie brzmi, czy możesz otworzyć konsolę programowo, czy nie. Czy wiesz, czy możesz to zrobić?
BritishSteel
Szukałem w interfejsie API, ale jedyną klasą związaną z pythonem jest QgsPythonRunner, który nie jest konsolą.
Martin
Odpowiedzi:
12
Korzystanie z makr
Możesz uruchomić konsolę QGIS Python podczas otwierania projektu , pisząc kilka wierszy w QGIS->Project->Project Properties:
Upewnij się, że włączasz makra w swoim projekcie, w ten sposób: Settings->Options->General->Enable macros: Always
Za pomocą startup.py
Jeśli chcesz, aby konsola QGIS Python otwierała się podczas uruchamiania QGIS , możesz utworzyć (jeśli jeszcze nie istnieje) startup.pyplik %APPDATA%\QGIS\QGIS3\i napisać:
EDYCJA (aby odpowiedzieć na pytanie uzupełniające autorstwa @Miro)
Jak zauważył Miro, jeśli QGIS Python Console jest otwarta, qgis.utils.iface.actionShowPythonDialog().trigger()zamknie ją, więc jeśli piszemy wtyczkę QGIS, warto wiedzieć, czy Python Console jest otwarta (widoczna), czy nie.
Możesz wiedzieć, czy konsola Python nie jest widoczna (a następnie otwórz ją), uruchamiając ten kod:
Odpowiedzi:
Korzystanie z makr
Możesz uruchomić konsolę QGIS Python podczas otwierania projektu , pisząc kilka wierszy w
QGIS->Project->Project Properties
:Upewnij się, że włączasz makra w swoim projekcie, w ten sposób:
Settings->Options->General->Enable macros: Always
Za pomocą startup.py
Jeśli chcesz, aby konsola QGIS Python otwierała się podczas uruchamiania QGIS , możesz utworzyć (jeśli jeszcze nie istnieje)
startup.py
plik%APPDATA%\QGIS\QGIS3\
i napisać:EDYCJA (aby odpowiedzieć na pytanie uzupełniające autorstwa @Miro)
Jak zauważył Miro, jeśli QGIS Python Console jest otwarta,
qgis.utils.iface.actionShowPythonDialog().trigger()
zamknie ją, więc jeśli piszemy wtyczkę QGIS, warto wiedzieć, czy Python Console jest otwarta (widoczna), czy nie.Możesz wiedzieć, czy konsola Python nie jest widoczna (a następnie otwórz ją), uruchamiając ten kod:
źródło