Python - Asignar valor a un campo QLineEdit

 
Vista:
Imágen de perfil de Amando Sanz Santonja
Val: 6
Ha disminuido su posición en 19 puestos en Python (en relación al último mes)
Gráfica de Python

Asignar valor a un campo QLineEdit

Publicado por Amando Sanz Santonja (4 intervenciones) el 11/05/2020 14:56:16
En en programa tengo:
1
2
self.leExtension.setText(extension)
self.leSalida.setText(var)

la primera vez que doy valor a estos campos, extension y var tienen valor, todo funciona correctamente, luego vuelvo a pasar por las mismas asignaciones y me da:
1
self.leSalida.setText(var)
TypeError: 'QLineEdit' object is not callable

En cambio no da error en self.leExtension.setText(extension) ... estando definidos igual leExtension y leSalida
¿Alguna pista? Agradecería vuestros comentarios
Gracias
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: 2.808
Oro
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

Asignar valor a un campo QLineEdit

Publicado por tincopasan (1082 intervenciones) el 11/05/2020 15:29:20
hola:
en principio no tiene porque darte problemas, la declaración es válida, ahora la implementación es otra cosa, y no hay forma que alguien sepa, si solo ponés dos líneas de código y hay que adivinar. Como esto es menos que básico, te muestro que si anda, con un código completo:
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
#-*- coding: utf-8 -*-
from PyQt5.QtWidgets import QApplication,QMainWindow
from PyQt5.QtWidgets import *
import sys
import random
 
class Ventana(QMainWindow):
 
    def __init__(self):
        QMainWindow.__init__(self)
        self.resize(200,150)
        self.linea = QLineEdit(self)
        self.linea.move(50,30)
        self.boton= QPushButton("Presioname",self)
        self.boton.move(50,100)
        self.boton.clicked.connect(self.mostrar)
 
    def mostrar(self):
        var = str(random.randrange(100))
        self.linea.setText(var)
 
 
 
app=QApplication(sys.argv)
Form_principal = Ventana()
Form_principal.show()
app.exec_()
si lo hacés de otra forma, poné el código completo.
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
Imágen de perfil de Amando Sanz Santonja
Val: 6
Ha disminuido su posición en 19 puestos en Python (en relación al último mes)
Gráfica de Python

Asignar valor a un campo QLineEdit

Publicado por Amando Sanz Santonja (4 intervenciones) el 11/05/2020 17:05:51
Muchas gracias por responder, tu programa funciona perfectamente, pero no el mio, te copio las partes implicadas en él:

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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
from PyQt5 import QtCore, QtGui, QtWidgets
from AvisWindow_ui import Ui_amAga_autor
import random
import os
import os.path
import zipfile
 
 
#Esta es la definición del campo Salida
        self.leSalida = QtWidgets.QLineEdit(self.groupBox)
        self.leSalida.setGeometry(QtCore.QRect(170, 210, 351, 31))
        font.setPointSize(9)
        self.leSalida.setFont(font)
        self.leSalida.setObjectName("leSalida")
        self.leSalida.setMaxLength(300)
 
,,,,
 
 
        if (Ui_amAga.exec_()):
            #############
            idiActual = self.idicomboBox.currentText()
            #############
            fileNames = Ui_amAga.selectedFiles()
            fileNames = str(fileNames)
            #Elimina caracteres que no interesan
            b = "[]'"
            for char in b:
                fileNames = fileNames.replace(char,"")
            #Se da valor a campos lineEdit
            self.leEntrada.setText(str(fileNames))
 
            #Separa nombre de fichero de la ruta
            varSalida=(os.path.split(str(fileNames)))
            varSalida = varSalida[1]
            varTot    = varSalida
 
            #extrae extension y nombre de fichero
            var       = str(os.path.splitext(varSalida)[0])
            extension = os.path.splitext(varTot)[1]
 
            #asigna el nombre sin extensión
 
            self.leExtension.setText(extension)
            self.leSalida.setText(var)
 
            if idiActual == "Catalá" ....

esta función es la que falla, rompiendo el programa asi:
self.leSalida.setText(var)
TypeError: 'QLineEdit' object is not callable

#El campo leExtension y leSalida estan definidos igual, pero solo rompe con leSalida ... y rompe al pasar la segunda vez ...
Un saludo y gracias.
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: 2.808
Oro
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

Asignar valor a un campo QLineEdit

Publicado por tincopasan (1082 intervenciones) el 12/05/2020 00:33:58
creo que esta linea:
1
self.leSalida.setObjectName("leSalida")
es la que te da el error, ¿necesitas realmente establecer el nombre?, por lo que se ve a simple vista la respuesta es: NO
marcala como comentario y probá:
1
# self.leSalida.setObjectName("leSalida")
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