在QGIS中设置图层面板的宽度?


11

当我打开QGIS时,“图层面板”默认设置为不显示“删除图层/组”按钮的宽度。因此,每次打开QGIS时,我必须调整面板大小以显示按钮。

是否可以为此面板设置默认宽度,这样我就不必调整其大小了?

我正在Windows 10上使用QGIS 2.18.5。


我添加了另一个面板(在我的情况下是“高级数字化工具”或“价值工具”)。其中一些面板试图保持其宽度。但是我同意,如果可以设置默认宽度,那就太好了。
Kazuhito

记住该项目会很好,但是您不需要该按钮,因为该功能可通过右键单击层弹出菜单使用,因此无需调整大小(即,按钮单击的次数完全相同-一个在图层上,另一个在删除)。如果仍要使用该按钮,则仍然不需要调整大小,因为您可以单击窗格边缘的>>按钮,并且任何隐藏的按钮都会出现在弹出窗口中(这适用于所有QGIS菜单)。
MappaGnosis

Answers:


11

使用一些Python,我们可以创建一个startup.py脚本,该脚本使用以下命令设置图层面板的宽度:

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)

将脚本保存在/.qgis2/python/目录中。现在,无论何时加载QGIS,都会相应地设置“图层”面板的宽度。


1
谢谢约瑟夫,这是一个很好的解决方案。但是我确实发现,在fixedWidth之后设置较低的minimumWidth会使fixedWidth变得多余。因此,出于我的目的,我只使用了x.setMinimumWidth(250),250对我来说是个神奇的数字,这仍然使我能够在需要时扩大面板的宽度。
balex's

@balex-非常欢迎,很高兴能为您提供帮助!有趣的是,当我删除时setFixedWidth,它不会相应地调整大小。也许是因为我使用的是2.18.2,但至少对您有用:)
约瑟夫(Joseph)

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.