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
martes, 11 de mayo de 2010
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
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
Descargar Ejemplos
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
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
Descargar Ejemplos
jueves, 6 de mayo de 2010
Control DateChooser y DirChooser
DateChooser
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
DirChooser
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
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
Aquí les dejo otro Ejemplo para crear gráficas
Descargar Ejemplo 2
Saludos..!!
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
Aquí les dejo otro Ejemplo para crear gráficas
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
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