Ver Mensaje Individual
  #3 (permalink)  
Antiguo 01/07/2013, 12:59
cabrapoderosa
 
Fecha de Ingreso: julio-2013
Ubicación: México
Mensajes: 10
Antigüedad: 11 años, 5 meses
Puntos: 0
Respuesta: Problemas con Tkinter y button

Cita:
Iniciado por razpeitia Ver Mensaje
Por favor no uses import *, por que después no sabes ni lo que tienes en tu namespace. Justo como en este caso. Donde habían 2 clases Button y agarraba la de matplot.

Código Python:
Ver original
  1. from Tkinter import *
  2. from tkFileDialog import *
  3. from ttk import *
  4. from numpy import arange, sin
  5. from matplotlib.pyplot import plot, show
  6.  
  7. def abrir():
  8.     archivo = askopenfilename(filetypes = [("Archivos de Texto",".txt")])    
  9.     entry.insert(0, archivo)
  10.     ruta = entry.get()
  11.     lbl_ruta = Label(frame, text = ruta)
  12.     lbl_ruta.pack()
  13.     return archivo
  14.  
  15. def graficar():
  16.     x = arange(0, 10, 0.1)
  17.     y = 2*sin(4*x)-x**2+10*x
  18.     plot(x, y)
  19.     show()
  20.    
  21. opciones = (1,2,3)
  22.  
  23. root = Tk()
  24. root.minsize(400, 300)
  25. root.title("Prueba")
  26.  
  27. frame = Frame(root)
  28. panel = Labelframe(frame, text = "Carga de archivo")
  29. label = Label(panel, text = "Archivo de datos:")
  30. entry = Entry(panel)
  31. button = Button(frame, text="Examinar...", command=abrir)
  32. combo = Combobox(panel, values = opciones)
  33. grafica = Button(frame, text="Graficar", command=graficar)
  34. lbl = Label (panel, text=combo.get())
  35.  
  36. frame.pack()
  37. panel.pack(in_ = frame, side = TOP, pady = 5, padx = 10)
  38. label.pack(pady = 5, padx = 10)
  39. entry.pack(pady = 5, padx = 10)
  40. button.pack(pady = 5, padx = 10)
  41. combo.pack(pady = 5, padx = 10)
  42. grafica.pack(pady = 5, padx = 10)
  43. lbl.pack(pady = 5, padx = 10)
  44.  
  45. combo.current(0)
  46.  
  47. root.mainloop()

PD: Es como la tercera vez que me preguntan esto diferentes personas, entonces supongo que es una tarea o proyecto final o lo que sea. Te recomiendo primero aprender python y leer un poco la documentación de las librerías que uses.

muchas gracias, en eso estoy... aprendiendo