programación visual con gambas

Anuncio
PROGRAMACIÓN
VISUAL CON
GAMBAS
¿QUÉ ES GAMBAS?
 Gambas
es
un
lenguaje de programación libre derivado
de BASIC. Es similar al producto de
Microsoft Visual Basic
 Gambas no es sólo un lenguaje de
programación, sino también un entorno
de programación visual para desarrollar
aplicaciones gráficas o de consola y
distribuido bajo la licencia GPL GNU
GPL GNU
 La Licencia Pública General de GNU
es
una
licencia
creada
por
la
Free Software Foundation a mediados
de
los
80,
y
está
orientada
principalmente a proteger la libre
distribución, modificación y uso de
software.
 Su propósito es declarar que el software
cubierto
por
esta
licencia
es
software libre
BASIC
 BASIC es un lenguaje de programación
que originalmente fue desarrollado como
una herramienta para la enseñanza;
 Se
diseminó
entre
las
microcomputadoras hogareñas a partir
de la década de 1980, y sigue siendo
muy popular hoy en día, en muchos
dialectos bastante distintos del original.
¿QUÉ ES GAMBAS?
 Permite crear formularios, botones de
comandos, cuadros de texto.
formularios
cuadro de texto
Botones
¿QUÉ ES GAMBAS?
 En la clasificación que hicimos en el tema
anterior
sobre
los
lenguajes
de
programación, podríamos decir que se
engloba dentro de los LENGUAJES
ORIENTADOS A OBJETOS.
¿QUÉ ES GAMBAS?
 Este tipo de lenguajes, funcionan igual
que los de ALTO NIVEL (como C), pero
además utilizan diferentes OBJETOS. A
estos objetos se les puede determinar
tanto sus propiedades (tamaño, color...)
como su comportamiento al hacer
determinados EVENTOS sobre ellos
(hacer clic, posar el ratón, arrastrar...)
¿POR QUÉ EL NOMBRE DE
GAMBAS?
 El
nombre de Gambas responde al
acrónimo recursivo
Gambas
Almost
Means Basic (Gambas Casi Significa
Basic), ya que no podemos considerarlo
un clon de BASIC, puesto que Gambas
también está muy inspirado por el
lenguaje de programación Java. Debido a
este nombre, el logo del proyecto
Gambas es una gamba de color azul.
ACRÓNIMO RECURSIVO
 Un acrónimo recursivo es aquél en el que
una de las letras se refiere al acrónimo
en sí, recursivamente.
 El ejemplo más conocido quizá sea el de
GNU, que significa GNU is not UNIX.
Como se ve, la G referencia al propio
acrónimo en sí, haciéndolo recursivo (o
recurrente según la RAE)
¿QUÉ ES GAMBAS?
 Con
Gambas
se
pueden
hacer
aplicaciones o programas con interfaz
gráfica de forma muy rápida.
EMPEZANDO CON
GAMBAS
 Vamos a seguir una serie de pasos, sin
pensar demasiado, para hacer una
aplicación muy sencilla, esto nos servirá
para familiarizarnos con Gambas, aunque
aún desconozcamos muchas cosas.
http://wiki.gnulinex.org/gambas/7
Primer
ejercicio
EMPEZANDO CON
GAMBAS
 SEGUNDO EJERCICIO
EMPEZANDO CON
GAMBAS
 TERCER EJERCICIO
INSTALAR GAMBAS
 PASO 1
 PASO 2
OBJETOS, EVENTOS, MENSAJES Y
PROCEDIMIENTOS
 OBJETO:
Todo programa orientado a
objetos se basa en la utilización de
objetos. Ejemplos de objetos:
 Ventanas,
 botones
de acción,
 barras de desplazamiento,
 listas desplegables,
 cuadros de texto,
 casillas de verificación,
 botones de opción ...
OBJETOS, EVENTOS, MENSAJES Y
PROCEDIMIENTOS
 EVENTO: Un evento es una acción que se
puede realizar con un objeto. Ejemplos
de eventos:
 hacer
clic con el ratón
 posar el ratón sobre el objeto
 pulsar el botón derecho del ratón
 moverlo
 ...
OBJETOS, EVENTOS, MENSAJES Y
PROCEDIMIENTOS
 MENSAJE:
Cuando
se
ejecuta
un
programa orientado a objetos, todos los
objetos implicados en él están recibiendo
mensajes de qué está ocurriendo con los
otros objetos, de modo que puedan
responder cuando sea necesario.
 La respuesta que puede dar un objeto a
un mensaje concreto no es otra que la
designada por el usuario en el MÉTODO
O PROCEDIMIENTO correspondiente al
evento en cuestión
OBJETOS, EVENTOS, MENSAJES Y
PROCEDIMIENTOS
Formulario del programa; aparece al
ejecutar el programa y contiene todos
los objetos de este
Cuando el usuario rellene
los campos necesarios y le
de al botón Command1, se
realizará el procedimiento
asociado al evento “hacer
clic” sobre dicho botón.
Todos los objetos del formulario están
esperando mensajes de qué está ocurriendo
Estas son las
respuestas
que darán los
objetos
cuando ocurra
el
evento
“hacer
clic”
sobre el botón
Command 1
¿CÓMO SE PROGRAMA EN
GAMBAS?
 Programar
en Gambas, como en
cualquier lenguaje orientado a objetos,
es una tarea algo diferente a la de otros
lenguajes de programación.
 Los pasos son:
Añadir y preparar los formularios (ventanas)
 Agregar los objetos(controles) a los
formularios
 Modificar las propiedades de los objetos y
formularios.
 Crear los procedimientos asociados a los
eventos de los objetos.

OTRO EJEMPLO SENCILLO
 Realizar
un nuevo programa con un
formulario.
 Dentro del formulario pondremos un
cuadro de texto explicando cómo
funciona el programa.
 Si pulsamos fuera del cuadro de texto, se
mostrará un mensaje de Bienvenida.
 Si se pulsa sobre el cuadro de texto el
programa finalizará.
OTRO EJEMPLO SENCILLO
Poner un título al
formulario principal
PUBLIC SUB Form_MouseDown()
Message.Info("Bienvenido a Gambas")
END
PUBLIC SUB Label1_MouseDown()
FMain.Close
END
Poner un borde al
cuadro de texto
EJERCICIO
 Crear un nuevo proyecto con un único
formulario que, al hacer clic sobre él,
muestre un cuadro de mensaje con tu
nombre completo.
CONTROLES
Puntero: Permite seleccionar
formularios y controles.
Etiqueta: Para escribir texto
que el usuario no pueda ni deba
modificar
Etiqueta: Para escribir texto
que el usuario no pueda ni deba
modificar. Además se puede
escribir texto con formato
“html”
Cuadro de imagen: Para
mostrar gráficos e imágenes.
CONTROLES
Cuadro de Película: Para
insertar vídeos animados.
Barra de progreso: Para
mostrar
cómo
avanza
el
progreso de una determinada
acción
Botón de acción: Permite
insertar botones que el usuario
podrá utilizar al hacer clic sobre
ellos para acciones concretas.
Casilla de verificación: Se
utilizan para indicar dos posibles
estados de una opción: activada
o desactivada.
Botones de opción: Son
parecidos a las casillas de
verificacion, pero en este caso el
usuario sólo podrá marcar uno
de los botones que estén
agrupados.
CONTROLES
Marco: Servirá para agrupar
controles relacionados entre sí.
Por ejemplo, un conjunto de
botones de opción.
Barra de botones: Servirá
para añadir controles que se
activarán sólo cuando el ratón
pase por encima.
Barra de desplazamiento:
Permite insertar una barra
vertical u horizontal.
Según la posición de la marca el
programa devolverá un valor
entero u otro.
Lista de opciones: Permite
insertar una lista de opciones,
de entre las que el usuario
podrá elegir.
CONTROLES
Cuadro de texto: Servirá para
que el usuario pueda introducir
texto en el programa.
UN NUEVO PROGRAMA
 Insertaremos un nuevo formulario que
llevará cinco controles:
PROPIEDADES DE LOS
OBJETOS
 Hay muchas propiedades de un objeto
que se pueden modificar, y permiten
definir perfectamente su aspecto.
 Una de las propiedades más importantes
es el nombre, puesto que será el que se
tendrá que utilizar siempre que se quiera
hacer alusión a él.
 Por defecto, el programa nombra los
objetos de forma genérica con el nombre
de la clase del objeto y un número.
PROPIEDADES DE LOS
OBJETOS
 Cada propiedad puede ser modificada:
 antes
de ejecutar el programa o
 durante la ejecución del programa
MODIFICAR LAS PROPIEDADES EN
TIEMPO DE DISEÑO
 Para hacerlo seguiremos los pasos:
1.Seleccionar el objeto
2.Buscar la propiedad en la ventana
Propiedades
3.Borrar el valor de la propiedad por
defecto y escribir el nuevo valor
MODIFICAR LAS PROPIEDADES EN
TIEMPO DE EJECUCIÓN
 Para
hacerlo debemos escribir la
sentencia adecuada en alguno de los
procedimientos
que
constituyen
el
programa.
 La forma general de hacer referencia a
una propiedad de un objeto es:
Objeto.Propiedad
Label3.Text
MODIFICAR EL
PROGRAMA CUADRADO
 Al presionar el botón Calcular o Alt+C el
programa calculará el cuadrado del número
introducido.
 Al iniciar el programa, prepararemos el
cuadro de texto para que no muestre nada,
y el cuadro del resultado también estará
vacío.
 El título del formulario principal será Cálculo
del cuadrado de un número
 Cambiar el tipo de letra para las tres
etiquetas, por Sans Serif y el tamaño a 4
 El tamaño de la letra para el botón será 3
 El color de la letra de la etiqueta del
resultado será rojo
EVENTOS EN UN
PROGRAMA
 Cada
control tiene unos eventos
determinados, aunque la mayoría de
ellos son comunes a todos los controles.
 Los eventos de un control podrán
introducirse en el código del programa
dándole al botón derecho del ratón y
eligiendo la opción Event.
TEXTO CON FORMATO
 Crear un nuevo formulario que permitirá
copiar, en una etiqueta, el texto que el
usuario escriba en un cuadro de texto,
aplicando un atributo (negrita, cursiva o
subrayado) en función de sobre qué
botón de acción se haga clic.
 Por otra parte al hacer clic sobre el
cuadro de texto, se borrará su contenido,
y al hacer doble clic sobre él, se borrará
tanto el contenido del cuadro de texto
como el de la etiqueta.
 Al pulsar el botón Salir finalizará el
programa.
TEXTO CON FORMATO
TEXTO CON FORMATO
 Añade un botón que sirva para eliminar
atributos.
CREAR UN ARCHIVO
EJECUTABLE
 Una
vez creado un programa y
comprobadas todas sus posibilidades,
puede compilarse, para crear un archivo
ejecutable, que permitirá ejecutar el
programa como cualquier otra aplicación
instalada en el ordenador.
 El modo de generar este archivo es:
Project -> make -> executable
 Ejercicio:
Crea
el
programa Cuadrado.
ejecutable
del
Ejercicios
 1. Crear un formulario con un botón de
acción, dos cuadros de texto y diez
etiquetas:
Ejercicios
 2. Al pulsar sobre el botón ejecutar se
completarán los campos:
 Nombre
Completo (utiliza el operador &
que sirve para concatenar cadenas de
texto)
 En mayúsculas (UCase(label_nº.text))
 En minúsculas (LCase(label_nº.text))
 Longitud (Len(label_nº.text))
Ejercicios
 3. Contesta a las siguientes preguntas:
¿Cuántos procedimientos tiene el formulario
anterior?
 ¿A qué evento están asociados?
 ¿Qué significa la instrucción End de un
procedimiento?
 4. Compila el programa para crear un ejecutable.
 5. Ejecuta el programa desde el archivo
ejecutable
 6. Modifica el formulario anterior para que se
introduzcan el nombre, el primer apellido y el
segundo en cuadros de texto independientes.
Agrega un nuevo botón que permita finalizar el
programa y cerrar el formulario.

TIPOS DE DATOS Y
DECLARACIÓN DE VARIABLES
 Los datos en Gambas pueden comportarse
de dos modos:
 como
constantes
 como variables
 La declaración de variables se realiza de la
forma:
[DIM] Identificador AS TipoDeDato
TIPOS DE DATOS Y
DECLARACIÓN DE VARIABLES
 Los tipos de datos que se pueden utilizar
en gambas son los siguientes:







Boolean: admite dos valores Verdadero (true) y Falso
(false)
Integer: admite valores enteros entre -32768 y
32767
Long: admite valores enteros entre -2147483648 y
2147483647
Single: como el tipo float en C
Float: admite valores de tipo flotante, equivalente al
double de C
Date: admite valores de tipo fecha y hora
String: para cadenas de caracteres
Ejercicio
 Explica
cuál será el resultado
siguiente código en un formulario:
del
PUBLIC SUB Form_Activate()
DIM
DIM
DIM
DIM
molecula AS String
atomos AS Integer
masa1 AS Single
masa2 AS Single
molecula = "Cloro"
atomos = 2
masa1 = 35.453
masa2 = atomos * masa1
Message.Info("La masa molecular del " & molecula & " es " & masa2 & " uma")
END
TIPOS DE DATOS Y
DECLARACIÓN DE VARIABLES
 Las variables que hemos declarado hasta ahora
sólo
estarán
disponibles
dentro
del
procedimiento en el que se declaran.
 Si una variable queremos utilizarla en todo el
programa, tendremos que declararla de la
siguiente forma:
Private Identificador as TipodeDato
 Las
constantes sólo se pueden declarar al
principio del programa, nunca dentro de un
procedimiento:
Private Const Identificador as TipodeDato = valor
Ejercicio
 Crea un nuevo formulario para calcular la
longitud de una circunferencia y su área
a partir del valor del radio.
 Utiliza tres variables:
 radio
 circunferencia
 circulo
 Utiliza una constante para el valor de
PI = 3.1416
Ejercicio
OPERADORES
ARITMÉTICOS
 SUMA: +
 RESTA:  MULTIPLICACIÓN: *
 DIVISIÓN: /
 POTENCIA: ^
 COCIENTE DE LA DIVISIÓN: \
 RESTO: MOD
Ejercicio
 Diseña un formulario en el que deben
introducirse dos números enteros. Al
pulsar el botón calcular se obtendrán las
principales operaciones aritméticas.
Para que funcionen el
cociente y el resto habrá
que utilizar la función Cint(),
que transformará el texto
de cualquier TextBox en un
valor numérico entero
LA FUNCIÓN INPUTBOX
 Existe otro modo de introducir un dato, distinto del de
escribirlo en un cuadro de texto, que consiste en
utilizar la función InputBox.
 Esta función mostrará una caja de diálogo con el
mensaje que se especifique, en la que se podrá
escribir el dato que se quiere proporcionar al
programa.
Campos no obligatorios
InputBox(mensaje,[titulo],[texto por omisión])
Texto para informar al
usuaraio de qué debe
introducir
Título
que
aparecerá en la
barra de título del
cuadro
Texto
que
aparecerá en
el cuadro de
datos
ESTRUCTURAS
SELECTIVAS
IF condicion THEN sentencia1 [ELSE sentencia2]...[ENDIF]
IF expresion THEN
...
endif
IF expresion THEN
...
ELSE IF expresion THEN
...
ELSE
...
endif
Ejercicio
 Crea el siguiente formulario:
Cuando pulsemos el botón
Comparar, aparecerá en la
etiqueta cuál de los dos
números es mayor.
Operadores relacionales
 En las condiciones de la sentencia IF será
necesario utilizar los operadores
relacionales:
Descargar