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()
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()
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
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()
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()