- QGIS Python Programming Cookbook
- Joel Lawhead
- 277字
- 2021-07-23 19:48:51
Storing and reading global preferences
PyQGIS allows you to store application-level preferences and retrieve them.
Getting ready
This code can be run in any type of PyQGIS application. In this example, we'll run it in the QGIS Python console for an easy demonstration. In this example, we'll change the default CRS for new projects and then read the value back from the global settings.
How to do it…
In this recipe, we will set the default projection used by QGIS for new projects using the Python console:
- Start QGIS.
- From the Plugins menu, select Python Console.
- We will need to import the Qt core library, as follows:
from PyQt4.QtCore import *
- In the Python console, run the following code:
settings = QSettings(QSettings.NativeFormat, QSettings.UserScope, 'QuantumGIS', 'QGis') settings.setValue('/Projections/projectDefaultCrs', 'EPSG:2278') settings.value('/Projections/projectDefaultCrs')
How it works…
This API is actually the Qt API that QGIS relies on for settings. In the QSettings object, we specify the NativeFormat for storage, which is the default format for the platform. On Windows, the format is the registry; on OS X, it's the plist
files; and on Unix, it's the text files. The other QSettings parameters are the organization and the application, often used as a hierarchy to store information. Note that even after changing these settings, it may be that none of the properties in the QGIS GUI change immediately. In some cases, such as Windows, the system must be restarted for registry changes to take effect. However, everything will work programmatically.
There's more…
If you want to see all the options that you can change, call the allKeys()
method of QSettings; this will return a list of all the setting names.
- 區塊鏈架構與實現:Cosmos詳解
- 碼上行動:零基礎學會Python編程(ChatGPT版)
- PostgreSQL Replication(Second Edition)
- Python機器學習基礎教程
- PySide 6/PyQt 6快速開發與實戰
- Java EE核心技術與應用
- Android項目實戰:手機安全衛士開發案例解析
- Mastering C++ Multithreading
- Python編程:從入門到實踐(第3版)
- Qt5 C++ GUI Programming Cookbook
- R語言數據可視化:科技圖表繪制
- Struts 2.x權威指南
- 零基礎輕松學C++:青少年趣味編程(全彩版)
- C++ System Programming Cookbook
- Python全棧開發:基礎入門