[Python-es] llamar ventana desde un boton en glade
Peon Blanco
peonblanco83 en gmail.com
Vie Dic 7 16:10:13 CET 2007
bueno este es el codigo lo que son la clase login y opciones estan
echo con simple-glade-codegen.py
y pues quiero que si el login es correcto lance la pantalla de opciones
y borre la de el login bueno espero que con este codigo me puedan ayudar
gracias a todos por ayudar
#!/usr/bin/env python
# -*- coding: iso-8859-1 -*-
import os, gtk, pg
from SimpleGladeApp import SimpleGladeApp
glade_dir = ""
class LOGIN(SimpleGladeApp):
def __init__(self, glade_path="INVENTARIO.glade", root="LOGIN", domain=None):
glade_path = os.path.join(glade_dir, glade_path)
SimpleGladeApp.__init__(self, glade_path, root, domain)
def new(self):
#context LOGIN.new {
print "A new LOGIN has been created"
#context LOGIN.new }
def on_buttonENTRAR_clicked(self, widget, *args):
#context LOGIN.on_buttonENTRAR_clicked {
#print "on_buttonENTRAR_clicked called with self.%s" % widget.get_name()
#context LOGIN.on_buttonENTRAR_clicked }
lo = self.OPCIONES()
lo()
USUARIO = self.entryUSUARIO.get_text()
CLAVE = self.entryCLAVE.get_text()
conn = pg.connect (user="postgres",dbname="USUARIO")
self.entryUSUARIO.set_text("")
self.entryCLAVE.set_text("")
sql = ("""SELECT "usuario" FROM "usuario" WHERE "usuario" = '%s';""")%USUARIO
sqL_1 = ("""SELECT "clave" FROM "usuario" WHERE "clave" = '%s';""")%CLAVE
for x in conn.query(sql).getresult():
US = x[0]
for x in conn.query(sqL_1).getresult():
CL = x[0]
try:
if US == USUARIO and CL == CLAVE:
self.label5.set_text("BIENBENIDO AL SISTEMA")
except:
self.label5.set_text("LOGIN INCORRECTO")
class OPCIONES(SimpleGladeApp):
def __init__(self, glade_path="INVENTARIO.glade", root="OPCIONES",
domain=None):
glade_path = os.path.join(glade_dir, glade_path)
SimpleGladeApp.__init__(self, glade_path, root, domain)
def new(self):
#context OPCIONES.new {
print "A new OPCIONES has been created"
#context OPCIONES.new }
def main():
l_oGIN = LOGIN()
o_pCIONES = OPCIONES()
l_oGIN.run()
if __name__ == "__main__":
main()
Más información sobre la lista de distribución Python-es