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 |
import wx class MyForm(wx.Frame): def __init__(self): super().__init__(None, title='Formulario con wxPython') self.SetSize((300, 200)) # Establecer un tamaño inicial para la ventana panel = wx.Panel(self) # Crear un sizer vertical para manejar los widgets vbox = wx.BoxSizer(wx.VERTICAL) # Crear widgets y añadirlos al sizer self.label_nombre = wx.StaticText(panel, label="Nombre:") vbox.Add(self.label_nombre, flag=wx.EXPAND|wx.LEFT|wx.TOP, border=10) self.text_nombre = wx.TextCtrl(panel) vbox.Add(self.text_nombre, flag=wx.EXPAND|wx.LEFT|wx.RIGHT, border=10) self.label_edad = wx.StaticText(panel, label="Edad:") vbox.Add(self.label_edad, flag=wx.EXPAND|wx.LEFT|wx.TOP, border=10) self.text_edad = wx.TextCtrl(panel) vbox.Add(self.text_edad, flag=wx.EXPAND|wx.LEFT|wx.RIGHT, border=10) self.boton_enviar = wx.Button(panel, label="Enviar") vbox.Add(self.boton_enviar, flag=wx.EXPAND|wx.ALL, border=10) self.boton_enviar.Bind(wx.EVT_BUTTON, self.enviar_datos)a # Configurar el sizer en el panel y ajustar el tamaño de la ventana panel.SetSizer(vbox) self.Centre() def enviar_datos(self, event): nombre = self.text_nombre.GetValue() edad = self.text_edad.GetValue() wx.MessageBox(f"Nombre: {nombre}\nEdad: {edad}", "Información Enviada") app = wx.App(False) frame = MyForm() frame.Show() app.MainLoop() |

