Trabajando con Calendarios en Gambas

Debido a que necesitaba contar con un calendario para una aplicacion que estaba desarrollando me lanze a la busqueda a ver que me ofrecia Gambas y me encontre con el control DateChooser.

Su ventana de propiedades es como sigue:

La aplicacion completa es mas o menos asi.

Tengo un boton, una caja de texto y el control DateChooser en el modo de diseño pongo el control DateChooser invisible de tal manera que al lanzar la aplicacion nos aparezca de este modo.

Y cuando le damos click al boton la aplicacion nos muestra lo siguiente:

El código que hace esto es el siguiente:

'El metodo Raise envia el control al frente del contenedor
Calendario.Raise()
'El metodo Show nos muestra el control
Calendario.Show()

Si seleccionamos una fecha del control este lo mostrara en la caja de texto, trabajamos esto en el evento change del DateChooser.

PUBLIC SUB Calendario_Change()

    txtFecha.Text = Calendario.Day & "/" & Calendario.Month & "/" & Calendario.Year
    Calendario.Hide()

END


Bueno yo particularmente no estoy muy conforme con la solucion que he encontrado asi que si alguien me puede ayudar a corregir y mejorar esto se lo agradeceria muchisimo.
Saludos combativos.

Anuncios

Haciendo y Restaurando Backups de Mysql con Gambas

Bueno despues de muchas lunas vuelvo a escribir sobre Gambas lamento haber tenido abandonado el tema durante mucho tiempo y dedicarme a postear otras cosas pero espero retomar con fuerza y ayudar a quienes tengan alguna duda con este lenguaje de paso que tambien aprendemos juntos listo entonces hecha la aclaracion manos a la obra.
El asunto es bastante sencillo resulta que necesitamos hacer backups de nuestra base de datos y poder restaurarlos posteriormente en caso de que suceda algun problema asi que creamos una interfaz grafica como esta.

Bueno la interfaz es bastante intuitiva(eso espero XD) asi que vamos a ver una porcion de codigo, cuando le damos click al boton respaldar.

Dialog.Title = "Guardar archivo"
Dialog.Path = "."
'Filtro para tomar solamente extensiones sql
Dialog.Filter = ["*.sql", "Ficheros sql"]
'Variables.CFG_BD_PASS es una variable donde almaceno el password de la base de datos, desde un modulo Variables
pass = " --password=" & Variables.CFG_BD_PASS & " "
IF NOT Dialog.SaveFile() THEN
	ruta = Dialog.Path
ENDIF
	'redireccion es la ruta donde se va a guardar el backup le agregamos el simbolo > como operador de redireccionamiento redireccion = " > " & ruta
	'Usamos SHELL para correr el proceso en este caso mysqldump que es el que realmente hace todo el trabajo para mayor informacion sobre este comando remitirse  a la documentacion de Mysql
	proceso = SHELL "mysqldump -u " & Variables.CFG_BD_USUARIO & pass & Variables.CFG_BD_NAME & redireccion FOR READ

Con lo que obtendriamos la siguiente ventana.


Con lo que inmediatamente guardamos nuestro backup con el nombre que le querramos asignar.
Si queremos restaurarlo el procedimiento es analogo salvo el comando de mysql que es el que se usa para restaurar

Dialog.Title = "Elija una ubicacion"
Dialog.Path = "."
Dialog.Filter = ["*.sql", "Ficheros sql"]
pass = " --password=" & Variables.CFG_BD_PASS & " "
IF NOT Dialog.OpenFile() THEN
	ruta = Dialog.Path
ENDIF
	redireccion = " < " & ruta
	proceso = SHELL "mysql -u " & Variables.CFG_BD_USUARIO & pass & Variables.CFG_BD_NAME & redireccion FOR READ


Y listo eso es todo asi de simple como se habran dado cuenta quien realmente hace el trabajo es mysql lo unico que he hecho con gambas es la interfaz grafica, haciendo uso de la orden SHELL para ejecutar los comandos.
Saludos y hasta la proxima.

La culpa es de uno

Quiza fue una hecatombe de esperanzas
un derrumbe de algun modo previsto
ah pero mi tristeza solo tuvo un sentido

todas mis intuiciones se asomaron
para verme sufrir
y por cierto me vieron

hasta aqui habia hecho y rehecho
mis trayectos contigo
hasta aqui habia apostado
a inventar la verdad
pero vos encontraste la manera
una manera tierna
y a la vez implacable
de desahuciar mi amor

con un solo pronostico lo quitaste
de los suburbios de tu vida posible
lo envolviste en nostalgias
lo cargaste por cuadras y cuadras
y despacito
sin que el aire nocturno lo advirtiera
ahi nomas lo dejaste
a solas con su suerte
que no es mucha

creo que tenes razon
la culpa es de uno cuando no enamora
y no de los pretextos
ni del tiempo

hace mucho muchisimo
que yo no me enfrentaba
como anoche al espejo
y fue implacable como vos
mas no fue tierno

ahora estoy solo
francamente
solo

siempre cuesta un poquito
empezar a sentirse desgraciado

antes de regresar
a mis lobregos cuarteles de invierno

con los ojos bien secos
por si acaso

miro como te vas adentrando en la niebla
y empiezo a recordarte.

Mario Benedetti

El Tiempo es Hoy

Video realizado por artistas peruanos para representar a América Latina en la conferencia de la ONU sobre el Cambio Climático en Copenhague. Demuestra lo que esta pasando con nuestros recursos naturales debido a la voracidad de un sistema que lo unico que hace es valorar el dinero por encima del hombre y de nuestro propio planeta, si seguimos asi caminamos hacia nuestra propia destruccion.

Solo la solidaridad salvara a este mundo, basta ya de tanta indifereencia si no luchamos hoy, no habra mañana.

Saludos