[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