5 votos

¿Construir un formulario personalizado para QGIS en un plugin de Python?

Quiero un formulario de edición de capas personalizado "QGIS 2.14.6 Essen" en mi propio plugin de python.

Yo uso layer.setEditForm( NODE_ui_path ) y layer.setEditFormInit('NODE.formOpen')

Función NODE.formOpen ¡no funciona!

MyPlugin está en ~\.qgis2\python\plugins\MyPlugin

Ui Form está en ~\.qgis2\python\plugins\MyPlugin\NODE.ui

formOpen está en ~\.qgis2\python\plugins\MyPlugin\NODE.py

3voto

Breizh88 Puntos 29

Resuelto por :

layer.editFormConfig().setInitCodeSource(1)
layer.editFormConfig().setInitFilePath(python_file_path)
layer.setEditForm(ui_file_path)
layer.setEditFormInit('formOpen')

Gracias.

2voto

bmw0128 Puntos 2824

EN QGIS 3.0

config = layer.editFormConfig()
config.setInitCodeSource(1)
config.setUiForm("ui_file.ui")
config.setInitFilePath("py_file.py")
config.setInitFunction("method_name")
layer.setEditFormConfig(config)

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X