Tôi tự hỏi nếu có một cách để mở giao diện điều khiển Python trực tiếp khi khởi chạy chương trình. Có khả năng đặt lối tắt cho bảng điều khiển Python, nhưng tôi không thể tìm thấy tùy chọn như vậy để khởi chạy chương trình QGIS.
Tôi tự hỏi nếu có một cách để mở giao diện điều khiển Python trực tiếp khi khởi chạy chương trình. Có khả năng đặt lối tắt cho bảng điều khiển Python, nhưng tôi không thể tìm thấy tùy chọn như vậy để khởi chạy chương trình QGIS.
Câu trả lời:
Bạn có thể khởi động bảng điều khiển Python của Python khi mở một dự án bằng cách viết một vài dòng trong QGIS->Project->Project Properties
:
def openProject():
import qgis
qgis.utils.iface.actionShowPythonDialog().trigger()
Hãy chắc chắn rằng bạn bật macro trên dự án của bạn, theo cách này: Settings->Options->General->Enable macros: Always
Khi bạn muốn bảng điều khiển Python của QGIS mở khi khởi chạy QGIS , bạn có thể tạo (nếu nó chưa tồn tại) một startup.py
tệp trong %APPDATA%\QGIS\QGIS3\
và ghi:
import qgis
qgis.utils.iface.actionShowPythonDialog().trigger()
EDIT (để giải quyết câu hỏi tiếp theo của @Miro)
Như Miro đã chỉ ra, nếu Bảng điều khiển Python của QGIS mở, qgis.utils.iface.actionShowPythonDialog().trigger()
sẽ đóng nó, vì vậy, nếu chúng tôi đang viết một plugin QGIS, có thể có ý nghĩa để biết liệu Bảng điều khiển Python có mở (hiển thị) hay không.
Bạn có thể biết nếu Bảng điều khiển Python không hiển thị (và sau đó mở nó) bằng cách chạy mã này:
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()