QT - Como limpiar mi QTreeview con PyQt5

 
Vista:
Imágen de perfil de Victor
Val: 6
Ha mantenido su posición en QT (en relación al último mes)
Gráfica de QT

Como limpiar mi QTreeview con PyQt5

Publicado por Victor (3 intervenciones) el 19/01/2019 12:12:06
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
class FAcceso(QTreeView):
    def __init__(self):
        super().__init__()
 
        self.setStyleSheet("background-color: #D7DEBE; color: #24095E;")
        self.setRootIsDecorated(False)
        self.setAlternatingRowColors(True)
        self.setSortingEnabled(True)
 
        model = QStandardItemModel(0, 4, self)
        model.setHeaderData(0, Qt.Horizontal, "ID")
        model.setHeaderData(1, Qt.Horizontal, "NUMERO BOMBA")
        model.setHeaderData(2, Qt.Horizontal, "DESC. BOMBA")
        model.setHeaderData(3, Qt.Horizontal, "NRO.FISICO")
        self.setModel(model)
        self.setEditTriggers(QAbstractItemView.NoEditTriggers)
        self.show()
 
        self.clicked.connect(self.click_en_view)
        model.removeRow(0)
        model.removeRow(1)
        model.removeRow(2)
        model.removeRow(3)
        model.insertRow(0)
        model.setData(model.index(0, 0), 'registro 1')
        model.setData(model.index(0, 1), 'registro 2')
        model.setData(model.index(0, 2), 'registro 3')
        model.setData(model.index(0, 3), 'registro 4')
        self.show()
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 96
Oro
Ha mantenido su posición en QT (en relación al último mes)
Gráfica de QT

Como limpiar mi QTreeview con PyQt5

Publicado por juanki (102 intervenciones) el 20/01/2019 18:47:48
Y qué problema tienes?

Ahí veo que borras las filas en el modelo, que es lo que habría que hacer, pero no dices que problema tienes.

Veo que limpias los datos en el modelo, que es como creo que se debe hacer. si quieres puedes usar removeRows y si le pasas 0 com primer parámetro y model.rowCount() como segundo, te las borrará todas de una vez.

No basta con pegar un trozo de código, hay que explicar qué te ocurre, si no, a ver como lo sabemos nosotros.

Un saludo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Victor
Val: 6
Ha mantenido su posición en QT (en relación al último mes)
Gráfica de QT

Como limpiar mi QTreeview con PyQt5

Publicado por Victor (3 intervenciones) el 21/01/2019 20:20:19
Hola como estas Juanki gracias por responder.. y la verdad que ya pude lograr limpiarlo usando el removeRows(0, model.rowCount()) pero ejecutándose solo una vez, o sea que si saco el pedazo de código que rellena el modelo y si lo meto dentro de un método diferente, lo trate de llamar de otra clase y hay esta el problema que ya no limpia más. Pero quisiera probar otra cosa, antes de volver a cargar al modelo quisiera quitarlo o destruirlo de su contenedor por ejemplo para cargarlo hice verticalLayout.addWidget y para destruir el objeto devuelta como podria hacerlo?. Si me ayudan con eso estaría muy agradecido.
Saludos!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 96
Oro
Ha mantenido su posición en QT (en relación al último mes)
Gráfica de QT

Como limpiar mi QTreeview con PyQt5

Publicado por juanki (102 intervenciones) el 22/01/2019 22:10:48
Hola

Bueno, no sé si comprendí algo, tienes que tratar de explicar claro y sencillo, y si puede ser adjuntando código, mejor.

Entiendo que si metes el código que rellena el modelo en otro método ya no funciona. No conozco python, pero supongo que en este caso será parecido a C++, tendrás que crear el modelo como un miembro de la clase, así estará disponible desde todos los métodos de la clase.

Si intentas acceder a el desde un método externo a la clase tendrás que pasárselo como parámetro.

Un saludo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Victor
Val: 6
Ha mantenido su posición en QT (en relación al último mes)
Gráfica de QT

Como limpiar mi QTreeview con PyQt5

Publicado por Victor (3 intervenciones) el 23/01/2019 13:34:43
Hola
Gracias juanki.. ya logre que me funcione lo metí todo en la misma clase y la verdad que c++ y python son muy parecidos para la próxima adjuntare los código para que puedan verlo mejor y tratare de explicar mejor el problema que tengo. De nuevo gracias por tu tiempo en ayudarme con mi problema
Un Saludo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar