Dengan PyQGIS, Anda dapat mengubah berbagai pengaturan seperti membuat grup di Panel Layers (atau daftar isi) tebal:
from PyQt4.QtCore import QSettings
QSettings().setValue("/Qgis/legendGroupsBold", True)
Pengaturan ditulis yang dapat dilihat dari opsi atau dari mengetik:
QSettings().value("/Qgis/legendGroupsBold")
>>> u'true'
Tapi itu tidak diterapkan. Saya pikir menggunakan
QSettings().sync()
mungkin membantu tetapi sayangnya tidak. Satu-satunya cara untuk menerapkannya adalah pergi ke GUI ( Settings > Options
) lalu klik OKatau mulai ulang QGIS.
Apakah ada metode untuk melakukan ini melalui PyQGIS?
Konteks :
Saya ingin menambahkan ini sebagai makro dalam file proyek untuk memastikan (untuk tujuan estetika) bahwa hanya nama grup yang tebal dan nama layer tidak. Oleh karena itu, akan ideal jika QSettings diterapkan ketika proyek telah dimuat (pengaturan awal akan diterapkan kembali ketika proyek ditutup).
QSettings().setValue("/qgis/legendLayersBold", False)
Saya pikir masalahnya ada di baris ini github.com/qgis/QGIS/blob/release-2_18/src/app/…
QgisApp::instance()->legend()->updateLegendItemStyles();
tetapi dalam versi masa depan mungkin?