martes, 11 de mayo de 2010

Como Enviar Correos Con Una Cuenta Gmail Gambas

Hola amigos aquí les dejo un programa la cual envía correos a partir de una cuenta gmail

Con este programas podrás enviar correos con tu cuenta gmail. Para ello debes instalar los paquetes mailutils
ssmtp

sudo apt-get install mailutils ssmtp

Una vez instalado los paquetes debes configurar el archivo ssmtp.conf de esta menera
sudo gedit /etc/ssmtp/ssmtp.conf

Se debe configurar de esta manera. Donde "cuenta" es el usuario de gmail y "clave_cuenta" la contraseña de la cuenta.

root="cuenta"@gmail.com

mailhub=smtp.gmail.com:587

hostname="cuenta"@gmail.com

FromLineOverride=YES

UseSTARTTLS=YES

AuthUser="cuenta"@gmail.com

AuthPass="clave_cuenta"

Ahora debes hacer una prueba para ver si funciona.
echo “Hola Amigo, Visita www.gambas-es.org , http://help-gambas.blogspot.com/” | mail -s “Saludo Amigo” cuenta@dominio.com

Se debe cambiar cuenta@dominio.com por el receptor del mensaje!!

Aquí hice un ejemplo en gambas para enviar correos

Descargar Ejemplo







Saludos

viernes, 7 de mayo de 2010

Como Crear Objetos por código

Alguna vez se han preguntado como crear un nuevo textbox sin que yo lo agarre desde la Caja de herramientas. Bueno en este mini tutorial veremos como crear un nuevo objeto o control desde la ventana de Código


El código esta en el evento Open del formulario ya que quiero mostrar los controles cuando se abra el formulario

PUBLIC SUB Form_Open()
DIM label1 AS NEW Label(FMain) 'Declaramos label1 como un nuevo label en el formulario “FMain”
DIM listBox1 AS NEW ListBox(FMain)
DIM ComboBox1 AS NEW ComboBox(FMain)
'Declaramos label1 como un nuevo label en el formulario “FMain”
'Ojo ME Significa el formulario que estamos actualmente en este caso "FMain"
DIM textbox1 AS NEW TextBox(ME)
DIM TableView1 AS NEW TableView(ME)
DIM Button1 AS NEW Button(ME)

'Crear un Nuevo Label
label1.X = 110 ' Poción en el eje de las x del control
label1.Width = 250 ' Ancho del control
label1.Height = 50 'Alto del control
label1.Font = Font["Arial, +14"] ' Tipo de Letra
label1.Text = "Como Crear Controles" ' Texto a mostrar

'Crear un Nuevo ListBox
listBox1.X = 25 ' Poción en el eje de las x del control
listBox1.Y = 50 ' Poción en el eje de las y del control
listBox1.Width = 150 'Ancho del Control
listBox1.Height = 200 ' Alto del Control
listBox1.Add("listBox1") 'Agrega un nuevo Elemento al ListBox

'Crear un Nuevo ComboBox
ComboBox1.X = 200
ComboBox1.Y = 50
ComboBox1.Width = 200
ComboBox1.Height = 25
ComboBox1.Text = "ComboBox1"

'Crear un nuevo TextBox
textbox1.X = 200
textbox1.Y = 85
textbox1.Width = 200
textbox1.Height = 25
textbox1.Text = "TextBox1"

'Crear un nuevo TableView
TableView1.X = 200
TableView1.Y = 120
TableView1.Width = 200
TableView1.Height = 100
TableView1.Header = GridView.Horizontal
TableView1.Columns.Count = 2
TableView1.Columns[0].Text = "Columna 1"
TableView1.Columns[0].Width = 100
TableView1.Columns[1].Text = "Columna 2"
TableView1.Columns[1].Width = 100
TableView1.Rows.Count = 1
TableView1.Mode = Select.Single
TableView1[0, 0].Text = "Fila 1"
TableView1[0, 1].Text = "Fila 1"

'Crear un nuevo Button
Button1.X = 200
Button1.Y = 230
Button1.Height = 50
Button1.Width = 200
Button1.Text = "Button1"
END

Imágenes

Free Image Hosting at www.ImageShack.us


Free Image Hosting at www.ImageShack.us

Ahora me imagino que te preguntas como puedo crear eventos a los controles..!! Bueno en este segundo ejemplo veremos como crearles eventos a “Uno de Ellos” y utilizar un solo evento para varios controles.

PUBLIC SUB Form_Open()
'Declaramos label1 como un nuevo label en el formulario “FMain”
'Lo Agrupamos a la Subrutina cnombre
DIM label1 AS NEW Label(FMain) AS "cnombre"
'Lo Agrupamos a la Subrutina cnombre
DIM textbox1 AS NEW TextBox(ME) AS "cnombre"
'Lo Agrupamos a la Subrutina cnombrebutton
DIM Button1 AS NEW Button(ME) AS "cnombrebutton"

'Crear un Nuevo Label
label1.X = 110 ' Poción en el eje de las x del control
label1.Width = 250 ' Ancho del control
label1.Height = 50 'Alto del control
label1.Font = Font["Arial, +14"] ' Tipo de Letra
label1.Text = "Como Crear Controles" ' Texto a mostrar

'Crear un nuevo TextBox
textbox1.X = 220
textbox1.Y = 70
textbox1.Width = 200
textbox1.Height = 25
textbox1.Text = "TextBox1"

'Crear un nuevo Button
Button1.X = 10
Button1.Y = 60
Button1.Height = 50
Button1.Width = 200
Button1.Text = "Button1"
END

'Hacemos una Subrutina “cnombre” con el evento Doble Click “DblClick”
PUBLIC SUB cnombre_DblClick()
' LAST Devuelve el ultimo objeto que se uso,
' Al darle doble click “Click” al objeto Button1 devolverá Button1
' .Text Especifica que se cambiara la propiedad Text de ese control
LAST.Text = InputBox("Escriba el Nombre a Cambiar")
END

'Hacemos una Subrutina “cnombrebutton” con el evento Click “Click”
PUBLIC SUB cnombrebutton_Click()
LAST.Text = InputBox("Escriba el Nombre a Cambiar")
END

Al Pulsar Algún Control o Objetos agrupado por la subrutina y el evento, se producirá las instrucciones

Imágenes

Free Image Hosting at www.ImageShack.us


Free Image Hosting at www.ImageShack.us


Free Image Hosting at www.ImageShack.us


Free Image Hosting at www.ImageShack.us


Free Image Hosting at www.ImageShack.us


Descargar Ejemplos

jueves, 6 de mayo de 2010

Control DateChooser y DirChooser

DateChooser

Free Image Hosting at www.ImageShack.us


El control DateChooser sirve para mostrar un calendario en el formulario. Se puede utilizar para agregar una fecha en un textbox o para buscar algún día en el calendario.

Ejemplo

Free Image Hosting at www.ImageShack.us


Descargar Ejemplo

DirChooser

Free Image Hosting at www.ImageShack.us


Este control se usa para Buscar un directorio en el disco duro.

Algunas de sus propiedades mas usadas son:
Picture Especifica la imagen que se mostrara al principio del la ruta. Siempre y cuando la ruta no sea “/” ya que tendrá un icono por defecto

Root Sirve para agregar la ruta donde el DirChooser comenzara. Por defecto viene en “/home/usuario”

ShowBookmark “True” Muestra una barra lateral mostrando las rutas favoritas
“False” Elimina la barra lateral

ShowFile “true” Especifica si los archivos de las carpetas se mostraran.
“false” Si no deseas mostrar los archivos de las carpetas

ShowHidden “true” Muestra los archivos ocultos
“false” no muestra los archivos ocultos

ShowSplitter “true” Agrega un icono por si el usuario necesita ver los archivos que contiene la carpeta

Ejemplo

Free Image Hosting at www.ImageShack.us


Free Image Hosting at www.ImageShack.us


Descargar Ejemplo

miércoles, 5 de mayo de 2010

Como Generar Gráficas Con El Componente Gb.Chart

Como usar el componente Gb.Chart
Este componente fue creado por Fabien Bodard actualmente se encuentra en versión beta, es utilizado para crear gráficas de diferentes tipos..!! Le dejo un ejemplo de como se utiliza y otro ejemplo para descargarlo.

Se debe crear un formulario con una dimensión de
Height = 532
Width = 539

Con un DrawingArea1 con estas dimensiones
Height = 511
Width = 511

En el evento Open del Formulario “Click derecho en el DrawingArea1 / Eventos / Open” se debe escribir este código

PUBLIC SUB Form_Open()
'Texto de la leyenda
Chart.Headers.Values = ["Tic", "Tac", "Toes"]
'Valores de las Gráfica tipo Float
Chart[0].Values = [1.0, 2.0, 3.0]
'Titulo de la Gráfica
Chart.Title.Text = "My Chart"
'Leyenda
Chart.Legend.Visible = TRUE
Chart.Legend.Title = "My Legend"
'Tipo de Gráfica
Chart.Type = ChartType.Lines
DrawingArea1.Refresh
END

Y en el evento Draw del DrawingArea1 se debe escribir el siguiente código
PUBLIC SUB DrawingArea1_Draw()
Chart.Width = DrawingArea1.Height
Chart.Height = DrawingArea1.Width
Chart.Draw 'Muestra la Grafica
END

Al ejecutar el proyecto debes tener una gráfica como muestra la imagen

Free Image Hosting at www.ImageShack.us

Aquí les dejo otro Ejemplo para crear gráficas

Free Image Hosting at www.ImageShack.us

Descargar Ejemplo 2

Saludos..!!

lunes, 3 de mayo de 2010

Utilizar Gb.Report

Como generar Reportes en Gambas2 “gb.report”
gb.report es un componente para generar reportes creado por Fabien Bodard en la version 2 de gambas que se encuentra en versión beta. La documentación de este componente es muy poca solamente existía el ejemplo que el mismo creador del componente hizo. Pero buscando y ensayando y ensayando encontré la forma de generar reportes con este componente. Para ello se debe crear nuevo proyecto y agregar el componente
- gb.qt
- gb.qt.ext
- gb.report

Para generar una reporte sencillo se debe crear un button y en el evento click del button se debe escribir este código.

PUBLIC SUB Button1_Click()
DIM cabezera AS ReportLabel
DIM texto AS ReportLabel
DIM cadena AS String
cadena = "\n\nGambas es un lenguaje de programación libre derivado de BASIC. Es distribuido con licencia GNU GPL.\nCabe destacar que presenta ciertas similitudes con Java ya que en la ejecución de cualquier aplicación,\nse requiere un conjunto de librerías interprete previamente instaladas (Gambas Runtime) que entiendan\nel bytecode de las aplicaciones desarrolladas y lo conviertan en código ejecutable por el computador.\nPor otro lado, a diferencia de Java, no se experimentan ralentizaciones y es posible desarrollar\ngrandes aplicaciones en poco tiempo.\n\n Permite crear formularios con botones de comandos, cuadros de texto y muchos otros controles y\nenlazarlos a bases de datos como MySQL, PostgreSQL o SQLite además de facilitar la creación de\naplicaciones muy diversas como videojuegos (utilizando OpenGL), aplicaciones para dispositivos móviles\n(en desarrollo pero muy avanzado), aplicaciones de red (con manejo avanzado de protocolos HTTP, FTP\n, SMTP, DNS), entre otras.\n"
Report.Padding = "2 cm" 'Margenes
cabezera = NEW ReportLabel(Report)
cabezera.Font = Font["Arial,+12"] ' Tipo de Letra
cabezera.Alignment = Align.Center 'Alineacion del Texto
cabezera.Text = "Componentes de Gambas" 'Texto a Mostrar
texto = NEW ReportLabel(Report)
texto.Alignment = Align.Justify
texto.Text = cadena
texto.Text &= "\nDefinición sacada de Wikipedia.org"
Report.Preview

END

El reporte quedara de este manera



Existen Tipos de reporte ReportTextLabel a estos se le puede agregar código html pero no lo recomiendo ya que al imprimir el reporte sale todo en un mismo renglón y no se ve el documento.



Aquí les dejo las imágenes del nuevo Gb.Report para gambas 3







Aquí les dejo un proyecto ya creado en gambas2-2.20.2 con diferentes tipos de reportes, Estos ejemplos se probaron con una Impresora Pixma MP190.

Descargar ejemplos

Esperemos que en la nueva versión “gambas 3” ya este componente este terminado..!



Saludos