Ustawienie szerokości panelu warstw w QGIS?

11

Kiedy otwieram QGIS, Panel warstw domyślnie ma szerokość, która nie pokazuje przycisku „Usuń warstwę / grupę”. Więc muszę zmienić rozmiar panelu, aby wyświetlać przycisk za każdym razem, gdy otwieram QGIS.

Czy można ustawić domyślną szerokość tego panelu, aby nie trzeba go zmieniać?

Używam QGIS 2.18.5 na Windows 10.

Balex
źródło
Dodam kolejny panel (w moim przypadku Advanced Digitizing Tool lub Value Tool). Niektóre z tych paneli starają się zachować szerokość. Ale zgadzam się, byłoby miło, gdyby można było ustawić domyślną szerokość.
Kazuhito,
Byłoby miło, aby projekt pamiętał, ale ten przycisk nie jest potrzebny, ponieważ funkcja jest dostępna za pośrednictwem menu podręcznego po kliknięciu prawym przyciskiem myszy warstwy, więc nie trzeba zmieniać rozmiaru (tzn. Jest to dokładnie taka sama liczba kliknięć przycisku - jeden na warstwie i jeden do usunięcia). Jeśli nadal chcesz używać przycisku, nadal nie musisz zmieniać jego rozmiaru, ponieważ możesz kliknąć przycisk >> na krawędzi okienka, a ukryte przyciski pojawią się w wyskakującym okienku (dotyczy to wszystkich menu QGIS).
MappaGnosis,

Odpowiedzi:

11

Korzystając z odrobiny języka Python , możemy utworzyć skrypt startup.py, który ustawia szerokość panelu warstw, używając:

from qgis.utils import iface
from PyQt4.QtGui import QDockWidget

for x in iface.mainWindow().findChildren(QDockWidget): 
    if x.objectName() == 'Layers':
        x.setFixedWidth(250)
        x.setMinimumWidth(100)
        x.setMaximumWidth(1000)

Zapisz skrypt w swoim /.qgis2/python/katalogu. Teraz za każdym razem, gdy ładujesz QGIS, szerokość panelu warstw zostanie odpowiednio ustawiona.

Joseph
źródło
1
Dziękuję, Joseph, to dobre rozwiązanie. Stwierdziłem jednak, że ustawienie niższej minimalnej szerokości po ustaleniu szerokości spowodowało, że stała szerokość stała się zbędna. Więc dla moich celów użyłem tylko x.setMinimumWidth (250), 250 było dla mnie magiczną liczbą, co wciąż pozwoliło mi poszerzyć panel w razie potrzeby.
balex
@balex - Witamy bardzo, cieszę się, że pomogło! Zabawne, że po usunięciu setFixedWidthnie zmienia się odpowiednio. Być może dlatego, że używam 2.18.2, ale przynajmniej działa to dla ciebie :)
Joseph