หยุดการติดฉลากใน QGIS ชั่วคราวหรือไม่


9

เป็นไปได้หรือไม่ที่จะหยุดชั่วคราว / หยุดการติดฉลากชั่วคราวใน QGIS เช่นเดียวกับใน Arcmap สำหรับทุกชั้นในคราวเดียว?

แถบเครื่องมือฉลากไม่มีวิธีแก้ปัญหา

คำตอบ:


11

QGIS 3.x

คุณสามารถใช้รหัสต่อไปนี้ในPython Consoleเพื่อสร้างปุ่มบนแถบเครื่องมือที่สลับเลเบลสำหรับเลเยอร์เวกเตอร์ทั้งหมด:

action = QAction(QIcon(""), "Turn labels" + "\n" + "ON/OFF", iface.mainWindow())
action.setCheckable(True)
iface.addToolBarIcon(action)

def label_control():
    for layer in QgsProject.instance().mapLayers().values():
        if layer.type() == QgsMapLayer.VectorLayer:
            if action.isChecked() == True:
                layer.setLabelsEnabled(True)
            else:
                layer.setLabelsEnabled(False)
        layer.triggerRepaint()

action.triggered.connect(label_control)
# Uncomment line below if you want to remove the icon yourself,
# otherwise it will be removed automatically when you restart QGIS
iface.removeToolBarIcon(action)

รหัสอยู่บนพื้นฐานของคำถาม: วิธีการเปิด / ปิดป้ายชื่อทั้งหมดของทุกชั้นใน QGIS


QGIS 2.18.x

คุณสามารถใช้ปลั๊กอินDeactivate / Active Labelsซึ่งมีปุ่มเพื่อเปิด / ปิดฉลากสำหรับเลเยอร์ทั้งหมด:

สลับป้ายกำกับ


1
ขอบคุณโจเซฟ นั่นคือสิ่งที่ฉันกำลังมองหา น่าเสียดายที่มันยังไม่ได้รับการจัดคิวสำหรับ Qgis 3
RolandG

1
@RolandG - ยินดีต้อนรับมากที่สุดเพิ่มวิธีการที่เป็นไปได้สำหรับ QGIS 3 :)
โจเซฟ

1
ไม่มีปลั๊กอินป้ายกำกับเลิกใช้ / ใช้งานอยู่! เริ่มคำขอจาก repoเพื่ออัปเกรด
Nikhil VJ

@nikhilvj - เยี่ยมมาก! :)
โจเซฟ
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.