PyQGIS를 사용하면 레이어 패널 (또는 목차)에서 그룹을 굵게 표시하는 등 다양한 설정을 변경할 수 있습니다.
from PyQt4.QtCore import QSettings
QSettings().setValue("/Qgis/legendGroupsBold", True)
옵션 또는 입력을 통해 볼 수있는 설정이 작성됩니다.
QSettings().value("/Qgis/legendGroupsBold")
>>> u'true'
그러나 적용되지 않습니다. 나는 생각했다
QSettings().sync()
불행히도 도움이 될 수는 없습니다. 적용 할 수있는 유일한 방법은 GUI ( Settings > Options
)로 이동 한 다음 OKQGIS 를 클릭 하거나 다시 시작하는 것입니다.
PyQGIS를 통해이 작업을 수행하는 방법이 있습니까?
맥락 :
그룹 파일 만 굵은 체와 레이어 이름이 아닌 것을 (미학적 목적으로) 프로젝트 파일에 매크로로 추가하고 싶습니다. 따라서 프로젝트가로드 될 때 QSettings가 적용되는 것이 이상적입니다 (프로젝트가 닫힐 때 초기 설정이 다시 적용됨).
sync ()를 호출하여 변경 사항을 커밋하면 status ()를 호출합니까?
—
whyzar
@whyzar-고맙지 만 테스트했지만 여전히 변경 사항이 없습니다.
—
Joseph
를 사용하여 동일하게 발생하기 때문에 너무 이상 할 수 있습니다. 버그
—
Fran Raga
QSettings().setValue("/qgis/legendLayersBold", False)
는 github.com/qgis/QGIS/blob/release-2_18/src/app/…
가능한 방법은
—
Fran Raga
QgisApp::instance()->legend()->updateLegendItemStyles();
있지만 향후 버전에서는?
@FranciscoRaga-링크 주셔서 감사합니다, 그것은 버그처럼 보인다. 버그 보고서를 게시하려고했지만 QGIS 3.0이 곧 출시 될 예정입니다.이 문제가 새 버전에 계속 존재하는지 확인할 것입니다. =)
—
Joseph