Python - Problemas con get

   
Vista:

Problemas con get

Publicado por diego (10 intervenciones) el 30/12/2016 09:21:06
Hola de nuevo, aquí sigo con Python y de nuevo estancado con una cosilla:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
from tkinter import*
#definiendo la funcion
def saluda():
         n1=float(Total.get())
         n2=float(Iva.get())
         iva=(n1+n2)/100
         lblSaludar=Label(ventana,text="el iva correspondiente es" + iva).place(x=10,y=110)
ventana=Tk()
ventana.geometry("500x300+100+100")
ventana.title("campos de texto")
lblTotal=Label(text="Total:").place(x=10,y=10)
#Crear caja texto total
entradaT=StringVar()
Total=Entry(ventana,textvariable=entradaT).place(x=70,y=20)
lblIva=Label(text="IVA:").place(x=10,y=50)
#crear caja de texto iva
entradaI=StringVar()
Iva=Entry(ventana,textvariable=entradaI,width=30).place(x=70,y=60)
#Crear los botones
btnSaludar=Button(ventana,text="Calcular",command=saluda,width=15).place(x=300,y=20)
 
ventana.mainloop()


Veréis que da error el método get , estoy estudiando de forma autodidacta y bueno voy un poquito lento.
Gracias por vuestra ayuda que siempre me brindais
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

Problemas con get

Publicado por tincopasan (1 intervención) el 30/12/2016 19:48:44
no has entendido como trabaja tkinter, de una forma simple te explico: cuando creas algún elemento, texto,label,etc en realidad es un objeto al cual se le pueden asignar propiedades, pero... de a forma individual sino se crea un conflicto.
1
Total=Entry(ventana,textvariable=entradaT).place(x=70,y=20)
Total = objeto ,place(ya le estás asignando una propiedad) esto es lo que está mal, lo correcto sería:
1
2
Total=Entry(ventana,textvariable=entradaT)
Total.place(x=70,y=20)

lo mismo sería con:
1
Iva=Entry(ventana,textvariable=entradaI,width=30).place(x=70,y=60)

lo correcto:
1
2
Iva=Entry(ventana,textvariable=entradaI,width=30)
Iva.place(x=70,y=60)

otra cosa, está línea también está incompleta:
1
lblSaludar=Label(ventana,text="el iva correspondiente es" + iva).place(x=10,y=110)
ya que iva es un tipo de valor númerico y es necesario una cadena
1
lblSaludar=Label(ventana,text="el iva correspondiente es" + str(iva)).place(x=10,y=110)

perdón sino soy claro, soy muy perro para explicar python
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar

Problemas con get

Publicado por diego (10 intervenciones) el 31/12/2016 09:43:01
Muchas Gracias, tenias razón lo hice de ese modo por que lo vi en un videotutorial pero para mi ejemplo daba error.
De nuevo gracias por compartir vuestros conocimientos,
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