コード例 #1
0
    def __init__(self, parent):
        wx.Frame.__init__(self,
                          parent,
                          id=wx.ID_ANY,
                          title=wx.EmptyString,
                          pos=wx.DefaultPosition,
                          size=wx.Size(500, 500),
                          style=wx.DEFAULT_FRAME_STYLE | wx.TAB_TRAVERSAL)

        self.Bind(wx.EVT_ACTIVATE, self.actualizarBitmap
                  )  #evento para actualizar el bitmap luego de tomar la foto

        self.SetSizeHintsSz(wx.Size(500, 500), wx.Size(600, 600))
        bSizer1 = wx.BoxSizer(wx.VERTICAL)

        self.m_button1 = wx.Button(self, wx.ID_ANY, u"Tomar Foto",
                                   wx.DefaultPosition, wx.DefaultSize, 0)
        bSizer1.Add(self.m_button1, 0, wx.ALL, 5)

        self.btn_guardar = wx.Button(self, wx.ID_ANY, u"Guardar",
                                     wx.DefaultPosition, wx.DefaultSize, 0)
        bSizer1.Add(self.btn_guardar, 0, wx.ALL, 5)

        self.nombre = wx.TextCtrl(self, wx.ID_ANY, wx.EmptyString,
                                  wx.DefaultPosition, wx.DefaultSize, 0)
        bSizer1.Add(self.nombre, 0, wx.ALL, 5)

        #Especificando que al momento de abrir el formulario nos busque si hay una foto de un usuario
        #en el lugar donde no tiene que ser, si la hay que la borre, para asi poner
        #un png por defecto que es la silueta de un user
        self.ruta = "orig_frame.jpg"

        if os.path.exists(self.ruta):
            os.remove(self.ruta)
            self.ruta = "user.png"
            print "Habia foto, pero se a eliminado"

        else:
            self.ruta = "user.png"
            print "NO existia imagen de usuario en el sistema"
        img = wx.Image(self.ruta, wx.BITMAP_TYPE_ANY)  ##copiar

        self.imagen2 = wx.StaticBitmap(self, wx.ID_ANY,
                                       wx.BitmapFromImage(img),
                                       wx.DefaultPosition, (200, 200), 0)
        self.ancho = 200
        self.alto = 200
        self.imagen2.SetBackgroundColour(
            wx.SystemSettings.GetColour(wx.SYS_COLOUR_HIGHLIGHT))
        bSizer1.Add(self.imagen2, 0, wx.ALL, 5)
        self.SetSizer(bSizer1)
        self.Layout()

        self.Centre(wx.BOTH)

        # Connect Events
        self.m_button1.Bind(wx.EVT_BUTTON, self.foto)
        self.btn_guardar.Bind(wx.EVT_BUTTON, self.guardarImg)

        self.postgres = conn.Database()
コード例 #2
0
    def __init__(self, parent):

        wx.Frame.__init__(self,
                          parent,
                          id=wx.ID_ANY,
                          title=u"Welcome",
                          pos=wx.DefaultPosition,
                          size=wx.Size(268, 220),
                          style=wx.DEFAULT_FRAME_STYLE | wx.TAB_TRAVERSAL)

        self.SetSizeHintsSz(wx.DefaultSize, wx.DefaultSize)
        self.SetBackgroundColour(
            wx.SystemSettings.GetColour(wx.SYS_COLOUR_HIGHLIGHT))

        fgSizer1 = wx.FlexGridSizer(0, 3, 0, 0)
        fgSizer1.SetFlexibleDirection(wx.BOTH)
        fgSizer1.SetNonFlexibleGrowMode(wx.FLEX_GROWMODE_SPECIFIED)

        fgSizer1.AddSpacer((0, 0), 1, wx.EXPAND, 5)

        self.m_staticText1 = wx.StaticText(self, wx.ID_ANY, u"MENU",
                                           wx.DefaultPosition, wx.DefaultSize,
                                           0)
        self.m_staticText1.Wrap(-1)
        self.m_staticText1.SetFont(wx.Font(12, 74, 90, 92, False, "Sans"))
        fgSizer1.Add(self.m_staticText1, 1, wx.ALL | wx.EXPAND, 5)

        fgSizer1.AddSpacer((0, 0), 1, wx.EXPAND, 5)

        self.m_bpButton1 = wx.BitmapButton(
            self, wx.ID_ANY, wx.Bitmap(u"r.png", wx.BITMAP_TYPE_ANY),
            wx.DefaultPosition, wx.Size(90, 90), wx.BU_AUTODRAW)
        fgSizer1.Add(self.m_bpButton1, 0, wx.ALL, 5)

        fgSizer1.AddSpacer((0, 0), 1, wx.EXPAND, 5)

        self.m_button2 = wx.BitmapButton(
            self, wx.ID_ANY, wx.Bitmap(u"busqueda.png", wx.BITMAP_TYPE_ANY),
            wx.DefaultPosition, wx.Size(90, 90), wx.BU_AUTODRAW)
        fgSizer1.Add(self.m_button2, 0, wx.ALL, 5)

        self.SetSizer(fgSizer1)
        self.Layout()

        self.Centre(wx.BOTH)

        # Connect
        self.m_bpButton1.Bind(wx.EVT_BUTTON, self.abrir_registro)
        self.m_button2.Bind(wx.EVT_BUTTON, self.abrir_busqueda)

        self.postgres = conn.Database()
コード例 #3
0
    def __init__(self, parent):
        wx.Frame.__init__(self,
                          parent,
                          id=wx.ID_ANY,
                          title=u"Registro",
                          pos=wx.DefaultPosition,
                          size=wx.Size(490, 450),
                          style=wx.DEFAULT_FRAME_STYLE | wx.TAB_TRAVERSAL)

        self.SetSizeHintsSz(
            wx.Size(490, 450), wx.Size(490, 450)
        )  #haciendo que siempre el formulario tenga las misms dimensiones
        self.Bind(wx.EVT_ACTIVATE, self.actualizarBitmap
                  )  #evento para actualizar el bitmap luego de tomar la foto

        self.postgres = conn.Database()

        self.SetBackgroundColour(
            wx.SystemSettings.GetColour(wx.SYS_COLOUR_HIGHLIGHT))

        fgSizer2 = wx.FlexGridSizer(0, 3, 0, 0)
        fgSizer2.SetFlexibleDirection(wx.BOTH)
        fgSizer2.SetNonFlexibleGrowMode(wx.FLEX_GROWMODE_SPECIFIED)

        self.m_staticText8 = wx.StaticText(self, wx.ID_ANY, u"Nombre:",
                                           wx.DefaultPosition, wx.DefaultSize,
                                           0)
        self.m_staticText8.Wrap(-1)
        fgSizer2.Add(self.m_staticText8, 0, wx.ALL | wx.ALIGN_BOTTOM, 5)

        self.txt_nombre = wx.TextCtrl(self, wx.ID_ANY, wx.EmptyString,
                                      wx.DefaultPosition, wx.Size(200, -1), 0)
        fgSizer2.Add(self.txt_nombre, 0, wx.ALL | wx.ALIGN_BOTTOM, 5)

        #####

        self.ruta = "orig_frame.jpg"

        if os.path.exists(self.ruta):
            os.remove(self.ruta)
            self.ruta = "user.png"
            print "Habia foto, pero se a eliminado"

        else:
            self.ruta = "user.png"
            print "NO existia imagen de usuario en el sistema"
        img = wx.Image(self.ruta, wx.BITMAP_TYPE_ANY)

        self.ancho = 150
        self.alto = 200

        ##bitmap

        self.m_bitmap1 = wx.StaticBitmap(self, wx.ID_ANY,
                                         wx.BitmapFromImage(img),
                                         wx.DefaultPosition, wx.Size(140,
                                                                     140), 0)
        fgSizer2.Add(self.m_bitmap1, 0, wx.ALL, 5)

        self.user = wx.StaticText(self, wx.ID_ANY, u"Apellido:",
                                  wx.DefaultPosition, wx.DefaultSize, 0)
        self.user.Wrap(-1)
        fgSizer2.Add(self.user, 0, wx.ALL | wx.ALIGN_CENTER_VERTICAL, 5)

        self.txt_apellido = wx.TextCtrl(self, wx.ID_ANY,
                                        wx.EmptyString, wx.DefaultPosition,
                                        wx.Size(200, -1), 0)
        fgSizer2.Add(self.txt_apellido, 0, wx.ALL, 5)

        self.btn_foto = wx.Button(self, wx.ID_ANY, u"Foto", wx.DefaultPosition,
                                  wx.DefaultSize, 0)
        fgSizer2.Add(self.btn_foto, 0, wx.ALL | wx.ALIGN_CENTER_HORIZONTAL, 5)

        self.m_staticText10 = wx.StaticText(self, wx.ID_ANY, u"Dirección",
                                            wx.DefaultPosition, wx.DefaultSize,
                                            0)
        self.m_staticText10.Wrap(-1)
        fgSizer2.Add(self.m_staticText10, 0, wx.ALL | wx.ALIGN_CENTER_VERTICAL,
                     5)

        self.txt_dir = wx.TextCtrl(self, wx.ID_ANY, wx.EmptyString,
                                   wx.DefaultPosition, wx.Size(200, -1), 0)
        fgSizer2.Add(self.txt_dir, 0, wx.ALL, 5)

        fgSizer2.AddSpacer((0, 0), 1, wx.EXPAND, 5)

        self.m_staticText11 = wx.StaticText(self, wx.ID_ANY, u"Teléfono:",
                                            wx.DefaultPosition, wx.DefaultSize,
                                            0)
        self.m_staticText11.Wrap(-1)
        fgSizer2.Add(self.m_staticText11, 0, wx.ALL | wx.ALIGN_CENTER_VERTICAL,
                     5)

        self.txt_tel = wx.TextCtrl(self, wx.ID_ANY, wx.EmptyString,
                                   wx.DefaultPosition, wx.Size(200, -1), 0)
        fgSizer2.Add(self.txt_tel, 0, wx.ALL, 5)

        fgSizer2.AddSpacer((0, 0), 1, wx.EXPAND, 5)

        self.m_staticText12 = wx.StaticText(self, wx.ID_ANY, u"DUI:",
                                            wx.DefaultPosition, wx.DefaultSize,
                                            0)
        self.m_staticText12.Wrap(-1)
        fgSizer2.Add(self.m_staticText12, 0, wx.ALL | wx.ALIGN_CENTER_VERTICAL,
                     5)

        self.txt_dui = wx.TextCtrl(self, wx.ID_ANY, wx.EmptyString,
                                   wx.DefaultPosition, wx.Size(200, -1), 0)
        fgSizer2.Add(self.txt_dui, 0, wx.ALL, 5)

        fgSizer2.AddSpacer((0, 0), 1, wx.EXPAND, 5)

        self.m_staticText6 = wx.StaticText(self, wx.ID_ANY, u"NIT:",
                                           wx.DefaultPosition, wx.DefaultSize,
                                           0)
        self.m_staticText6.Wrap(-1)
        fgSizer2.Add(self.m_staticText6, 0, wx.ALL, 5)

        self.txt_nit = wx.TextCtrl(self, wx.ID_ANY, wx.EmptyString,
                                   wx.DefaultPosition, wx.Size(200, -1), 0)
        fgSizer2.Add(self.txt_nit, 0, wx.ALL, 5)

        fgSizer2.AddSpacer((0, 0), 1, wx.EXPAND, 5)
        fgSizer2.AddSpacer((0, 0), 1, wx.EXPAND, 5)

        self.btn_guardar = wx.Button(self, wx.ID_ANY, u"Guardar",
                                     wx.DefaultPosition, wx.DefaultSize, 0)
        fgSizer2.Add(self.btn_guardar, 0, wx.ALL | wx.ALIGN_CENTER_HORIZONTAL,
                     5)

        self.btn_cancelar = wx.Button(self, wx.ID_ANY, u"Cancelar",
                                      wx.DefaultPosition, wx.DefaultSize, 0)
        fgSizer2.Add(self.btn_cancelar, 0, wx.ALL | wx.ALIGN_CENTER_HORIZONTAL,
                     5)

        self.SetSizer(fgSizer2)
        self.Layout()

        self.Centre(wx.BOTH)

        # Connect Events
        self.btn_guardar.Bind(wx.EVT_BUTTON, self.guardar)
        self.btn_cancelar.Bind(wx.EVT_BUTTON, self.cancelar)
        self.btn_foto.Bind(wx.EVT_BUTTON, self.foto)

        self.padre = parent
コード例 #4
0
    def __init__(self, parent, fps=7):
        ###

        wx.Frame.__init__(self,
                          parent,
                          id=wx.ID_ANY,
                          title=wx.EmptyString,
                          pos=wx.DefaultPosition,
                          size=wx.Size(400, 640),
                          style=wx.DEFAULT_FRAME_STYLE | wx.TAB_TRAVERSAL)

        self.SetSizeHintsSz(wx.DefaultSize, wx.DefaultSize)
        capture = cv2.VideoCapture(0)
        capture.set(cv.CV_CAP_PROP_FRAME_WIDTH, 1000)
        capture.set(cv.CV_CAP_PROP_FRAME_HEIGHT, 1000)

        self.SetForegroundColour(
            wx.SystemSettings.GetColour(wx.SYS_COLOUR_BTNSHADOW))
        self.SetBackgroundColour(
            wx.SystemSettings.GetColour(wx.SYS_COLOUR_BTNSHADOW))

        bSizer3 = wx.BoxSizer(wx.VERTICAL)

        self.m_panel1 = wx.Panel(self, wx.ID_ANY, wx.DefaultPosition,
                                 (500, 500), wx.TAB_TRAVERSAL)
        self.m_panel1.SetMinSize(wx.Size(400, 640))
        self.m_panel1.SetMaxSize(wx.Size(400, 640))
        self.m_panel1.SetForegroundColour(
            wx.SystemSettings.GetColour(wx.SYS_COLOUR_BTNSHADOW))
        self.m_panel1.SetBackgroundColour(
            wx.SystemSettings.GetColour(wx.SYS_COLOUR_BTNSHADOW))

        bSizer4 = wx.BoxSizer(wx.VERTICAL)

        self.m_button3 = wx.Button(self.m_panel1, wx.ID_ANY, u"CAPTURA",
                                   wx.Point(-500, -1), wx.DefaultSize, 0)
        bSizer4.Add(self.m_button3, 0, wx.ALL, 5)

        ####

        self.capture = capture

        ret, frame = self.capture.read()

        height, width = frame.shape[:2]

        parent.SetSize((width, height))

        frame = cv2.cvtColor(frame, cv2.COLOR_BGR2RGB)

        self.bmp = wx.BitmapFromBuffer(width, height, frame)

        self.timer = wx.Timer(self)

        self.timer.Start(1000. / fps)

        self.Bind(wx.EVT_PAINT, self.OnPaint)

        self.Bind(wx.EVT_TIMER, self.NextFrame)

        #####

        self.m_bpButton3 = wx.BitmapButton(self.m_panel1, wx.ID_ANY, self.bmp,
                                           wx.DefaultPosition, (400, 640),
                                           wx.BU_AUTODRAW | wx.NO_BORDER)
        bSizer4.Add(self.m_bpButton3, 0, wx.ALL, 5)
        self.m_bpButton3.SetForegroundColour(
            wx.SystemSettings.GetColour(wx.SYS_COLOUR_BTNSHADOW))
        self.m_bpButton3.SetBackgroundColour(
            wx.SystemSettings.GetColour(wx.SYS_COLOUR_BTNSHADOW))

        self.m_panel1.SetSizer(bSizer4)
        self.m_panel1.Layout()
        bSizer4.Fit(self.m_panel1)
        bSizer3.Add(self.m_panel1, 1, wx.EXPAND | wx.ALL, 5)

        self.SetSizer(bSizer3)
        self.Layout()

        self.Centre(wx.BOTH)

        ###

        # Connect Events
        self.m_button3.Bind(wx.EVT_BUTTON, self.guardar)
        self.m_bpButton3.Bind(wx.EVT_BUTTON, self.guardar)

        self.postgres = conn.Database()
コード例 #5
0
    def __init__(self, parent):
        wx.Frame.__init__(self,
                          parent,
                          id=wx.ID_ANY,
                          title=u"Buscar Usuario",
                          pos=wx.DefaultPosition,
                          size=wx.Size(1157, 700),
                          style=wx.DEFAULT_FRAME_STYLE | wx.TAB_TRAVERSAL)

        self.SetSizeHintsSz(wx.DefaultSize, wx.DefaultSize)
        self.SetBackgroundColour(
            wx.SystemSettings.GetColour(wx.SYS_COLOUR_HIGHLIGHT))

        self.Bind(wx.EVT_ACTIVATE, self.actualizarBitmap
                  )  #evento para actualizar el bitmap luego de tomar la foto

        fgSizer3 = wx.FlexGridSizer(0, 3, 0, 0)
        fgSizer3.SetFlexibleDirection(wx.BOTH)
        fgSizer3.SetNonFlexibleGrowMode(wx.FLEX_GROWMODE_SPECIFIED)

        self.m_staticText10 = wx.StaticText(self, wx.ID_ANY,
                                            u"Busqueda", wx.DefaultPosition,
                                            wx.Size(80, -1), 0)
        self.m_staticText10.Wrap(-1)
        fgSizer3.Add(self.m_staticText10, 0, wx.ALL, 5)

        self.m_textbuscar = wx.TextCtrl(self, wx.ID_ANY,
                                        wx.EmptyString, wx.DefaultPosition,
                                        wx.Size(319, -1), 0)
        fgSizer3.Add(self.m_textbuscar, 0, wx.ALL, 5)

        fgSizer3.AddSpacer((0, 0), 1, wx.EXPAND, 5)

        fgSizer3.AddSpacer((0, 0), 1, wx.EXPAND, 5)

        self.listctrl = wx.ListCtrl(self, wx.ID_ANY, wx.Point(10, 10),
                                    wx.Size(800, 440),
                                    wx.LC_REPORT | wx.SUNKEN_BORDER)
        fgSizer3.Add(self.listctrl, 0, wx.ALL, 5)

        fgSizer5 = wx.FlexGridSizer(0, 3, 0, 0)
        fgSizer5.SetFlexibleDirection(wx.BOTH)
        fgSizer5.SetNonFlexibleGrowMode(wx.FLEX_GROWMODE_SPECIFIED)

        fgSizer5.AddSpacer((0, 0), 1, wx.EXPAND, 5)

        #####

        self.ruta = "orig_frame.jpg"

        if os.path.exists(self.ruta):
            os.remove(self.ruta)
            self.ruta = "user.png"
            print "Habia foto, pero se a eliminado"

        else:
            self.ruta = "user.png"
            print "NO existia imagen de usuario en el sistema"
        img = wx.Image(self.ruta, wx.BITMAP_TYPE_ANY)

        self.ancho = 150
        self.alto = 200

        ##

        self.m_bitmap5 = wx.StaticBitmap(self, wx.ID_ANY,
                                         wx.BitmapFromImage(img),
                                         wx.DefaultPosition, wx.Size(140,
                                                                     140), 0)
        fgSizer5.Add(self.m_bitmap5, 0, wx.ALL | wx.ALIGN_CENTER_HORIZONTAL, 5)

        fgSizer5.AddSpacer((0, 0), 1, wx.EXPAND, 5)
        fgSizer5.AddSpacer((0, 0), 1, wx.EXPAND, 5)
        self.m_cambiarfoto = wx.Button(self, wx.ID_ANY, u"Cambiar foto",
                                       wx.DefaultPosition, wx.DefaultSize, 0)
        fgSizer5.Add(self.m_cambiarfoto, 0,
                     wx.ALL | wx.ALIGN_CENTER_HORIZONTAL, 5)
        fgSizer5.AddSpacer((0, 0), 1, wx.EXPAND, 5)

        self.m_staticText17 = wx.StaticText(self, wx.ID_ANY, u"ID",
                                            wx.DefaultPosition, wx.DefaultSize,
                                            0)
        self.m_staticText17.Wrap(-1)
        fgSizer5.Add(self.m_staticText17, 0, wx.ALL, 5)

        self.m_textid = wx.TextCtrl(self, wx.ID_ANY, wx.EmptyString,
                                    wx.DefaultPosition, wx.Size(200, -1), 0)
        fgSizer5.Add(self.m_textid, 0, wx.ALL, 5)

        fgSizer5.AddSpacer((0, 0), 1, wx.EXPAND, 5)

        self.m_staticText18 = wx.StaticText(self, wx.ID_ANY, u"Nombre",
                                            wx.DefaultPosition, wx.DefaultSize,
                                            0)
        self.m_staticText18.Wrap(-1)
        fgSizer5.Add(self.m_staticText18, 0, wx.ALL, 5)

        self.m_textnombre = wx.TextCtrl(self, wx.ID_ANY,
                                        wx.EmptyString, wx.DefaultPosition,
                                        wx.Size(200, -1), 0)
        fgSizer5.Add(self.m_textnombre, 0, wx.ALL, 5)

        fgSizer5.AddSpacer((0, 0), 1, wx.EXPAND, 5)

        self.m_staticText19 = wx.StaticText(self, wx.ID_ANY, u"Apellido",
                                            wx.DefaultPosition, wx.DefaultSize,
                                            0)
        self.m_staticText19.Wrap(-1)
        fgSizer5.Add(self.m_staticText19, 0, wx.ALL, 5)

        self.m_textapellido = wx.TextCtrl(self, wx.ID_ANY,
                                          wx.EmptyString, wx.DefaultPosition,
                                          wx.Size(200, -1), 0)
        fgSizer5.Add(self.m_textapellido, 0, wx.ALL, 5)

        fgSizer5.AddSpacer((0, 0), 1, wx.EXPAND, 5)

        self.m_staticText20 = wx.StaticText(self, wx.ID_ANY, u"Dirección",
                                            wx.DefaultPosition, wx.DefaultSize,
                                            0)
        self.m_staticText20.Wrap(-1)
        fgSizer5.Add(self.m_staticText20, 0, wx.ALL, 5)

        self.m_textdireccion = wx.TextCtrl(self, wx.ID_ANY,
                                           wx.EmptyString, wx.DefaultPosition,
                                           wx.Size(200, -1), 0)
        fgSizer5.Add(self.m_textdireccion, 0, wx.ALL, 5)

        fgSizer5.AddSpacer((0, 0), 1, wx.EXPAND, 5)

        self.m_staticText21 = wx.StaticText(self, wx.ID_ANY, u"Telefono",
                                            wx.DefaultPosition, wx.DefaultSize,
                                            0)
        self.m_staticText21.Wrap(-1)
        fgSizer5.Add(self.m_staticText21, 0, wx.ALL, 5)

        self.m_texttelefono = wx.TextCtrl(self, wx.ID_ANY,
                                          wx.EmptyString, wx.DefaultPosition,
                                          wx.Size(200, -1), 0)
        fgSizer5.Add(self.m_texttelefono, 0, wx.ALL, 5)

        fgSizer5.AddSpacer((0, 0), 1, wx.EXPAND, 5)

        self.m_staticText22 = wx.StaticText(self, wx.ID_ANY, u"DUI",
                                            wx.DefaultPosition, wx.DefaultSize,
                                            0)
        self.m_staticText22.Wrap(-1)
        fgSizer5.Add(self.m_staticText22, 0, wx.ALL, 5)

        self.m_textdui = wx.TextCtrl(self, wx.ID_ANY, wx.EmptyString,
                                     wx.DefaultPosition, wx.Size(200, -1), 0)
        fgSizer5.Add(self.m_textdui, 0, wx.ALL, 5)

        fgSizer5.AddSpacer((0, 0), 1, wx.EXPAND, 5)

        self.m_staticText23 = wx.StaticText(self, wx.ID_ANY, u"NIT",
                                            wx.DefaultPosition, wx.DefaultSize,
                                            0)
        self.m_staticText23.Wrap(-1)
        fgSizer5.Add(self.m_staticText23, 0, wx.ALL, 5)

        self.m_textnit = wx.TextCtrl(self, wx.ID_ANY, wx.EmptyString,
                                     wx.DefaultPosition, wx.Size(200, -1), 0)
        fgSizer5.Add(self.m_textnit, 0, wx.ALL, 5)

        fgSizer5.AddSpacer((0, 0), 1, wx.EXPAND, 5)

        fgSizer5.AddSpacer((0, 0), 1, wx.EXPAND, 5)

        self.m_modificar = wx.Button(self, wx.ID_ANY, u"Modificar",
                                     wx.DefaultPosition, wx.DefaultSize, 0)
        fgSizer5.Add(self.m_modificar, 0, wx.ALL | wx.ALIGN_CENTER_HORIZONTAL,
                     5)

        fgSizer5.AddSpacer((0, 0), 1, wx.EXPAND, 5)

        fgSizer5.AddSpacer((0, 0), 1, wx.EXPAND, 5)

        self.m_eliminar = wx.Button(self, wx.ID_ANY, u"Eliminar",
                                    wx.DefaultPosition, wx.DefaultSize, 0)
        fgSizer5.Add(self.m_eliminar, 0, wx.ALL | wx.ALIGN_CENTER_HORIZONTAL,
                     5)

        fgSizer5.AddSpacer((0, 0), 1, wx.EXPAND, 5)

        fgSizer5.AddSpacer((0, 0), 1, wx.EXPAND, 5)

        fgSizer3.Add(fgSizer5, 1, wx.EXPAND, 5)

        self.SetSizer(fgSizer3)
        self.Layout()

        self.Centre(wx.BOTH)

        # Connect

        self.listctrl.Bind(wx.EVT_LIST_ITEM_SELECTED, self.seleccionar)
        self.m_textbuscar.Bind(wx.EVT_TEXT, self.busqueda)
        self.m_cambiarfoto.Bind(wx.EVT_BUTTON, self.foto)
        self.m_modificar.Bind(wx.EVT_BUTTON, self.modificar)
        self.m_eliminar.Bind(wx.EVT_BUTTON, self.eliminar)

        self.padre = parent
        self.ancho = 150
        self.postgres = conn.Database()
        #Evento cargar datos de encabezado a la lista y se definen las columnas que lleva el control
        self.listctrl.InsertColumn(0, 'Id', width=50)
        self.listctrl.InsertColumn(1, 'Nombre', width=250)
        self.listctrl.InsertColumn(2, 'Apellido', width=250)
        self.listctrl.InsertColumn(3, 'Direccion', width=250)
        self.listctrl.InsertColumn(4, 'Telefono', width=100)
        self.listctrl.InsertColumn(5, 'Dui', width=50)
        self.listctrl.InsertColumn(6, 'Nit', width=50)
        self.cargar_datos()