GAMBAS VISUAL BASIC PARA LINX VISUAL BASIC PARA LINUX

Slides:



Advertisements
Presentaciones similares
Manejo de errores y excepciones
Advertisements

¿ES GAMBAS SOFTWARE LIBRE?
Tema 7. Introducción a lenguaje de programación Visual Basic (clase 1)
Microsoft© Visual Basic . Net.
Control de errores visual basic
Módulo 8: Manejo de Errores y Excepciones
por: Prof. Luis Vallenilla
Módulo 4: Trabajando con Procedimientos. Descripción Crear procedimientos Uso de procedimientos Uso de funciones predefinidas Debug and Deploy Escribir.
Visual Basic Prof.: Carol Briones García. Uso de Archivos  Definición  Es un conjunto de información que se almacena en algún medio de escritura que.
Applications Development I 6.1 Foro Tomas Anzalotta Alvarado.
Entrada y Salida en C++, Estructuras de Control Prof. Manuel B. Sánchez.
Trabajar con módulosTrabajar con variables públicasCrear procedimientos Pasar argumentos por valor y por referencia Referencia rápida.
Ciclos disponibles en Visual Basic Nury Capera Tovar.
ESTRUCTURAS DE DATOS Y ALGORITMOS Samuel Peñaló
Sesión n.1 fundamentos de programación scripting en praat.
Programación II Sesión 3. TABLA DE CONTENIDO  Tipos de Datos en C  Delimitadores  Tipo Char  Tipo Int  Tipo Float  Tipo Double  Constantes  Operadores.
RubyNote ARCHIVOS EN RUBY HECHO POR: FRANCISCO ALVAREZ AGUILA.
Control, adquisición y monitoreo con Arduino y Visual Basic .net
Introducción a la Programación Multimedial
TUTORIAL VISUAL BASIC Hecho por jjc524.
Convenciones de nomenclatura y diseño
Estructuras de Control.
Introducción a la Programación Multimedial
ROBERTO PINEDA FLORES. ALEXIS JULIAN VELAZQUEZ NAVA.
Programación en C - manejo de Archivos
Conceptos básicos de programación
Métodos en Java.
Algunas Características de C++ no presentes en C
Página Web del Lenguaje Pascal.
II QUIMESTRE PARCIAL I VISUAL.
Algunas Características de C++ no presentes en C
Select Case Visual Basic.
Tema 2 Variables y cálculos
Introducción a Visual Studio .NET
Bucles y estructuras de decisión
INTRODUCCION Este trabajo se trata de 2 principales opciones con las que cuenta Visual Basic los que son ComboBox y checkbox El control ComboBox de los.
ESUCOMEX profesor presentación power builder Lautaro Cabezas
MATLAB 6.5 Clase 3: Funciones básicas e Introducción a la Programación
QUÈ ES VISUAL BASIC ES UN LENGUAJE DE PROGRAMACIÒN QUE SE HA DISEÑADO PARA FACILITAR EL DESARROLLO DE APLICACIONES EN EL ENTORNO GRÀFICO. (GUI GRAPHICAL.
Los formularios de Presentación y el Acerca de son formularios que ya están prediseñados y tienen unas características específicas.   El formulario de.
Principios básicos del entorno windows
Tema 7. Introducción a lenguaje de programación Visual Basic (clase 2)
LÓGICA DE PROGRAMACIÓN
Unidad 3. Introducción a la programación
Tema 7. Introducción a lenguaje de programación Visual Basic (clase 1)
Usando StreamReader y StreamWriter
Estructuras de control en PHP
Programación en Java..
Hardware Description Language
Curso de iniciación al trabajo con MatLab 7.0
Diego Hernández R Pascal Variables Diego Hernández R
LENGUAJE C.
Introducción al Visual Basic  Un programa en sentido informático está constituido en un sentido general por variables que contienen los datos con los.
Introducción práctica la uso de la tarjeta Arduino.
GRÁFICOS Un gráfico es la representación gráfica de los datos de una hoja de cálculo y facilita su interpretación. La utilización de gráficos hace más.
Tema 9. Estructuras de repetición. Clase 2
Metodología de la Programación
GRÁFICOS Un gráfico es la representación gráfica de los datos de una hoja de cálculo y facilita su interpretación. La utilización de gráficos hace más.
Excel Macros Macros Automáticas.
Tema 3: Operadores Antonio J. Sierra.
Bucles y estructuras de decisión
PROGRAMACIÓN (2).
Nombre del Docente: María Guadalupe Salazar Chapa
Tema 7. Introducción a lenguaje de programación Visual Basic (clase 1)
Tema 7. Introducción a lenguaje de programación Visual Basic (clase 2)
Tema 8. Estructuras de decisión. Clases 1 y 2.
Tema 8. Estructuras de decisión. Clases 3 y 4.
Access Este programa permite manipular datos en forma de tablas, realizar cálculos complejos con fórmulas y funciones, incluso dibujar distintos tipos.
Macros EN EXCEL.
Tema 10. Uso de formularios y controles
Transcripción de la presentación:

GAMBAS VISUAL BASIC PARA LINX VISUAL BASIC PARA LINUX https://www.gambas-es.org http://gambaswiki.org

CONTENIDOS INTRODUCCION TIPOS DE DATOS DECLARACION de VARIABLES ASIGNACIÓN OPERADORES MATEMATICOS Y LOGICOS. EXPRESIONES SENTENCIAS DE CONTROL DE FLUJO CONTTROLES MODULOS TRABAJO CON ARCHIVOS GESTION DE ERRORES P.O.O.

1.INTRODUCCIÓN GAMBAS fue desarrollado por el programador francés Benoît Minisini. Pretendía que Gambas tuviera las mejores características de Visual Basic, sin los numerosos errores y defectos que ve en el programa y el lenguaje, bajo la potencia de Linux. Visual Basic + Linux = GAMBAS http://gambas.sourceforge.net/en/main.html

Qué es GAMBAS? Gambas no es solo un lenguaje de programación, es también un entorno (IDE) de programación visual para desarrollar aplicaciones gráficas o de consola. Hace posible el desarrollo de aplicaciones complicadas muy rápidamente. El programador diseña las ventanas de forma gráfica, arrastra objetos desde la caja de herramientas y escribe el código en BASIC para cada objeto. GAMBAS ES SOFTWARE LIBRE. Gambas se distribuye con la licencia GPL GNU (General Public Licence). Significa que se distribuye con el código fuente y respeta las cuatro libertades definidas por la Free Software Fundation (usio, copia, modificación y redistribución).

gambas.sourceforge.net/

Elementos de Gambas Para poder desarrollar y ejecutar programas en Gambas, son necesarios los siguientes elementos: Un compilador, que se encargará de transformar el código fuente y archivos que formen parte de un proyecto hecho en gambas, en un programa ejecutable. Un intérprete capaz de hacer que los programas hechos en Gambas sean ejecutados por el sistema operativo. Un entorno de desarrollo que facilite la programación y diseño de las interfaces gráficas de los programas. Componentes que añaden funcionalidad al lenguaje. Son librerías especificas que le dotan de mas posibilidades. En la actualidad existen componentes para usar xml, conexiones de red, opengl, ODBC, distintas bases de datos, escritorios basados en qt, en gtk, etc.

2. TIPOS DE DATOS String: Se usa para almacenar una cadena de texto. Boolean: Representa un valor Lógico. Sólo acepta valores True o False. Byte: Representa un numero entero positivo entre 0 y 255. Short: Representa un numero entero con valores posibles entre 32.768 y +32.767 Integer: numero entero con valores posibles entre 2.147.483.648 y +2.147.483.647. Long: Representa un numero entero con valores posibles entre: 9.223.372.036.854.775.808 y +9.223.372.036.854.775.807 Single: Representa un numero real, con decimales, con valores posibles entre 1.7014118E+38 y +1,7014118E+38. Float: Representa un numero real, con decimales, con valores posibles entre 8,98846567431105E+ 307 y + 8,98846567431105E+307. Date: Almacena valores de fecha y hora. Internamente la fecha y la hora se almacenan en formato UTC. String: Se usa para almacenar una cadena de texto.

DIM nombre_variable AS tipo_variable 3. DECLARAR VARIABLES DIM nombre_variable AS tipo_variable Hay dos lugares donde se pueden declarar las variables, dependiendo del ámbito en el que se vayan a usar: Variable local: Si se declaran dentro de una subrutina o función, están disponibles para ser usadas sólo dentro de esa subrutina o función. Variable global: Si se declara al principio del archivo de código (un modulo o clase) están disponibles para todo el código de ese archivo, en todas sus subrutinas.

Conversión de tipos: Funciones que permiten convertir un tipo a otro: Cbool(expresión): Convierte la expresión a un valor booleano. Cshort(expresión), Cint(expresión) o Cinteger(expresión), y Clong(expresión): convierte respectivamente, la expresión en un numero de tipo Short, Integer y Long. Cdate(expresión): convierte la expresión en una fecha. Debe tener cuidado porque solo admite formato de fecha en ingles mes/dia/año hora:minutos:segundos. Ejemplo: Cdate(“09/06/1972) 01:45:12”), donde 06 sera el dia 06 y no el mes 06. CStr (expresión): Convierte la expresión en una cadena de texto sin tener en cuenta la configuración local. Str$(expresión): convierte la expresión en una cadena de texto, teniendo en cuenta la configuración local. ejemplo. Str$(CDate(“09/06/1972 01:45:12”)) devuelve: “06/09/1972 01:45:12” Val(expresión): Convierte una cadena de texto en un tipo Boolean,

Operadores matemáticos + - * / ^ es el operador de potencia. Ejemplo: 4^3=64 DIV: la parte entera del resultado de la división MOD: resto de la división entera Ejemplo: 9 DIV 2 = 4,9 9 MOD 4 = 1

Funciones Matemáticas Abs(numero): calcula el valor absoluto de un número. Dec(numero): decrementa un número. Frac(numero): devuelve la parte decimal de un número. Inc(numero): Incrementa un numero. Int(numero): devuelve la parte entera de un numero. Max(numero1, numero2, ...): devuelve el numero mayor. Min(numero1, numero2, ...): devuelve el numero menor. Round(numero,decimales): redondea un numero con los decimales deseados. Rnd([mínimo],[máximo]): devuelve un numero aleatorio comprendido entre mínimo y máximo.

Manejo de cadenas Len(Cadena): devuelve la longitud de una cadena &: concatenar cadenas Ejemplo: Dim nombre AS String Dim Apellidos AS String Nombre=”Manuel” Apellidos=”Alvarez Gomez” PRINT Apellidos & “, “ & Nombre La salida en consola será: Alvarez Gomez, Manuel

Lectura / Escritura DIM Num AS Short PRINT “ Introduzca un numero” INPUT Num

4. SENTENCIAS DE CONTROL DE FLUJO GAMBAS

Sentencia Selectiva IF expresión THEN .... ELSE …. ENDIF Sirve para tomar una decisión Sintaxis Básica: Ejemplo: IF A>B THEN PRINT “ El mayor es A:”&A ELSE PRINT “ El mayor es B:” &B ENDIF IF expresión THEN .... ELSE …. ENDIF

SELECT CASE SELECT CASE CASE ….. CASE ELSE END SELECT Leer Edad SELECT CASE edad CASE 0 TO 2 PRINT “Bebe” CASE 2 TO 12 PRINT “Niño” CASE 18 PRINT “Mayor de edad” CASE 13 TO 17 PRINT “Adolescente” CASE ELSE PRINT “Adulto” END SELECT

BUCLE MIENTRAS WHILE Condición ... instrucciones WEND Salir = False WHILE NO(Salir) //Escribir Menu WEND

Bucle REPITE..MIENTRAS REPEAT ... instrucciones UNTIL Condición Salir = False REPEAT //Escribir Menu UNTIL Salir

Bucle FOR (Para) FOR Var = Expr TO Expr [ STEP 2 ] ... NEXT Ejemplo: imprimir pares del 2 al 100 DIM Num AS Short FOR Num = 2 TO 100 STEP 2 PRINT Num NEXT

Funciones de Fecha y Hora FUNCIÓN DE FECHA-HORA DESCRIPCIÓN Date Devuelve la fecha sin el componente de hora. DateAdd Añade un periodo de tiempo a la fecha dada. DateDiff Devuelve el periodo de tiempo entre dos fechas. Day Devuelve el día de un valor Date. Hour Devuelve el número de horas de un valor Date. Minute Devuelve el número de minutos de un valor Date. Month Devuelve el número de mes de un valor Date. Now Devuelve la fecha y hora actuales. Second Devuelve los segundos de un valor Date. Time Devuelve la parte de hora de un valor Date. Timer Devuelve el número de segundos transcurridos desde que se inició el programa. Wek Devuelve el número de semana de un valor Date.

FECHAS (tipo DATE) DIM Fecha AS DATE DIM A,M,D As Integer Dim Mes as String Fecha = NOW() PRINT Fecha M = Month() D = Day() A = Year() SELECT CASE M CASE 1: Mes=“Enero” CASE 2: Mes=“Febrero” …. END SELECT PRINT “Hoy es “& D ” de “& Mes &“ de”& A

ARRAYS Dim vector As Integer[10] Gambas dispone de un tipo predefinido de matriz para cada tipo de datos nativo. El nombre de estas clases es el nombre del tipo de datos que almacenan seguido de un corchete abierto y otro cerrado. Byte[ ] : Matriz de valores Byte. Float[ ] :Matriz de valores Float. Short[ ] :Matriz de valores Short. Date[ ]:Matriz de valores Date. String[ ] :Matriz de valores String. Integer[ ] : Matriz de valores Integer. Long[ ] :Matriz de valores Long. Single[ ] :Matriz de valores Single.

Recorrer un array: BUCLE FOR Coloca en cada casilla el valor de su subindice: y muetra el contenido del arreglo Dim i As Integer Dim array As New Integer[21] For i = 0 To 20 array[i] = i* 2 Next For k = 0 To 20 Print "Indice: ", i, "valor: ", array[i] End

CALCULADORA (MENU) PUBLIC SUB Calculadora DIM A, B, Res AS Float DIM Opc AS Short As Int PRINT “Introduzca un numero real"; INPUT A; INPUT B; PRINT "Menu"; PRINT "1.Sumar"; PRINT "2.Restar"; PRINT "3.Multiplicar"; PRINT "4.Dividir"; PRINT "5.Potencia"; PRINT "introduzca opción 1-5"; INPUT opc; SELECT CASE opc CASE 1 Res = A+B; CASE 2 Res = A-B; CASE 3 Res = A*B; CASE 4 Res = A/B; CASE 5 END SELECT PRINT “El resultado es” & Res WHILE 1 WEND END

FUNCIONES Y SUBRUTINAS

FUNCIONES FUNCTION Nombre ( Param AS Datatype,...) AS Datatype Toman datos de entrada y devuelven un valor, con la sentencia RETURN val. Sintaxis: Ejemplo: Function Cubo(Num As Integer) As Integer Return Num*Num*Num End FUNCTION Nombre ( Param AS Datatype,...) AS Datatype

SUBRUTINAS No devuelven ningún valor. Respuesta a eventos { PUBLIC | PRIVATE } SUB NombreSUB (Parametro AS Datatype, Parameter AS Datatype ... ) ... END

AMBITO VARIABLES STATIC: para clases. La misma variable será compartida por cada objeto de dicha clase. 1) Si necesitamos que una variable sea accesible a varias subrutinas pero que estén en el mismo formulario, módulo o clase, se define: PRIVATE Identificador AS TipoDato [ = Expresión ] 2)Si necesitamos que una variable sea accesible desde otros formularios, módulos o clases: PUBLIC Identificador AS TipoDato [ = Expresión ]

ARCHIVOS: FLUJO DE DATOS GAMBAS

FUNCION DESCRIPCION CLOSE Cierra un Flujo EOf Devuelve un valor indicando si se alconzó el final de un archivo. FLUSH Vuelca la salida de un Flujo que dispone de un buffer. INPUT Lee cadenas de un Flujo de texto y las convierte en valores. INPUT FROM Redirige la entrada estándar. LINE INPUT Lee líneas de un Flujo de texto. LOCK Bloquea un Flujo abierto. LOf Devuelve la longitud de un Flujo. OPEN Abre un archivo para lectura o escritura y crea un Flujo. OUTPUT TO Redirige la salida estándar. PRINT Escribe expresiones en un Flujo. READ Lee datos binarios de un Flujo. SEEK Cambia la posición del puntero de un Flujo. SEEk Obtiene la posición del puntero de un Flujo. UNLOCK Desbloquea un Flujo abierto. WRITE Escribe datos binarios en un Flujo.

Gestión de Archivos Dim hFile As File Dim sLin As String ARCHIVO = FLUJO DE DATOS Abrir el archivo para LEER / ESCRIBIR Dim hFile As File Dim sLin As String ‘Abrimos el archivo para lectura hfile = Open FileName For Read While NO(EOF(hfile)) READ hfile, sLin WEND Close #hFile

Sub EscribeContenidoFichero(FileName As String) Dim hFile As File Dim sLin As String ‘Abrimos el archivo para lectura hfile = Open FileName For Read ‘Vamos leyendo el archivo hasta el final While Not Eof(hFile) Line Input #hFile, sLig Print sLin Wend Close #hFile End

MANEJO DE ERRORES CON GAMBAS

ERRORES EN UN PROGRAMA Cuando ejecutamos una aplicación, se pueden producir errores, por ejemplo, intentando abrir un archivo que no existe. Este tipo de error nos producen una salida abrupta dl programa. (Aborta el programa) Para evitar esto: Manejo de errores y excepciones

MANEJO DE ERRORES Podemos tratar ese tipo de errores, para que nuestra aplicación pueda por ejemplo, mostrar un mensaje de error e incluso poder seguir ejecutando el programa, como si nada hubiera ocurrido. CATCH Captura un error en una función DEBUG Muestra en consola un mensaje de depuracion ERROR Indica si ocurrió un error, o muestra un mensaje de error Error La clase estatica Error, nos puede indicar el número de error FINALLY Ejecuta un bloque de codigo en una funcion, incluso si hubo un error TRY Intenta ejecutar una orden, sin disparar un error. Application_Error Rutina de tratamiento de errores global

' MANEJO DE ERRORES Finally ' siempre se ejecuta aunque se produzca el error Public Sub Main() EscribeContenidoFichero("/home/uno/hola.txt") 'intento cerrar el archivo End Try Close #hFile   ' Función que Escribe el contenido de un archivo en la pantalla numero2 = Error.Code 'guardamos el numero de error Sub EscribeContenidoFichero(FileName As String) texto2 = Error.Text 'guardamos el texto del error Dim numero1 As Integer Dim numero2 As Integer Dim texto1 As String Dim texto2 As String Catch ' se ejecuta solo si se ha producido un error Dim hFile As File   ' mostramos los errores producidos... Dim sLig As String Print "No he podido mostrar el archivo: "; FileName Print "Numero del error:"; numero1; " "; texto1 Print "Numero del error:"; numero2; " "; texto2 'intentamos abrir el archivo, si sale mal, nos quedamos con el numero y texto del error... Try hfile = Open FileName For Read If Error Then numero1 = Error.Code 'guardamos el numero de error texto1 = Error.text 'guardamos el texto del error Endif While Not Eof(hFile) Line Input #hFile, sLig Print sLig Wend

APLICACIONES GRAFICAS CON GAMBAS

CONTROLES GRÁFICOS MAS USUALES Label: etiqueta simple que contiene una línea de texto de poca longitud. Para mostrar un texto en una posición dentro de un formulario. TextLabel: Similar al Label, pero puede mostrar texto formateado con HTML. Ejemplo: TextLabel1.Text=”<b>Texto con HTML</b><br> Dentro de una<i>etiqueta.” TextBox: caja de texto de una sola línea, en la cual el usuario puede modificar, copiar, cortar o borrar texto. TextArea: una caja de texto que es capaz de contener múltiples líneas. Button: 3 TIPOS CheckBox RadioButton PictureBox

BOTONES. TIPOS Button: botón normal, con un texto (propiedad Text y Picture). Evento Click ToggleButton: mantiene su estado tras la pulsación. Para dos posibles valores: SI/NO, V/F, H/M… Propiedad Value: True (presionado) /False (no presionado) ToolButton: sólo muestra un pequeño icono, sin texto. Para insertar en barras de herr.

CONTROLES GIF animado TextBox Botón de Comando PICTURE BOX LABEL (etiqueta) CHECKBOX RADIO BUTTON TextBox Botón de Comando COMBO BOX LIST BOX TEXT AREA

TextBox El control textbox es utilizado para entrada de texto , es decir un cuadro con un ancho y un alto para que el usuario escriba un texto para ser procesado. Propiedades: - Text: contiene el texto http://gambaswiki.org/wiki/comp/gb.qt4/textbox

ValueBox Este control es un TextBox mejorado que permite al usuario introducir un valor formateado. El tipo de valor se especifica con la propiedad Type. Por ahora, soporta los siguientes tipos: Date identifier Number Time Los valores incorrectos son rechazados automáticamente por el control. http://gambaswiki.org/wiki/comp/gb.form/valuebox?l=es

CONTROLES : CheckBox RadioButton PictureBox: para mostrar una imagen. Responde a eventos del ratón (botón personalizado).

ListBox y ComboBox Lista Simple y Lista Desplegable ComboBox: Es una lista desplegable. El usuario solo ve el elemento seleccionado en cada momento y puede desplegar la lista para seleccionar uno u otro. ListBox y ComboBox Lista Simple y Lista Desplegable ListBox: Es una lista simple. Se añaden o eliminan elementos que se representan como una línea de texto cada uno. La propiedad Mode determina si el usuario puede o no puede seleccionar ninguno, solo uno o varios.

ListView ListView: Similar al ListBox. Puede representar un icono junto con cada elemento de la lista, y cada uno de ellos está identificado por una clave única de texto, que nos permite hacer búsquedas de los elementos por su cable.

ComboBox Implementa un cuadro de texto combinado con un cuadro de lista desplegable . Ejemplo: Form.Login Propiedades: List: lista de items o elementos. Se implementa en un array. La lista se puede introducir en tiempo de codificación en las propiedades del control. Index: número de elemento Count: Devuelve el número de elementos que están listados dentro del control. Ver mas en: http://gambaswiki.org/wiki/comp/gb.qt4/combobox?l=es

Diálogos (msgs) La clase Message se encarga de mostrar una ventana modal al usuario, en la cual podemos definir un texto, que será una información o una pregunta, y una serie de botones para elegir una opción. Message.Info: se utiliza para mostrar un mensaje meramente informativo. Solo permite definir un botón que normalmente tendrá un texto como OK o Aceptar. Ejemplo: Messaje.Info (“Ocurrió un error interno”)

Diálogos II (mensajes) Message.Delete: para indicar que se va a proceder a eliminar algo (archivos, registros de una tabla, etc,), y se solicita al usuario su confirmación. Message.Error: para indicar un mensaje de error. Message.Question: es una pregunta al usuario, generalmente para confirmar una acción o una opción de configuración. Message.Warning: advierte al usuario de que la acción que va a realizar supone un cierto peligro, por ejemplo, perdida de datos de una tabla que podrían ser útiles aun.

MENSAJES PERSONALIZADOS Los métodos de la clase Message devuelven un número entero que denota el botón que el usuario pulsó. En este sentido, podemos personalizar los mensajes, con la cantidad de botones que queramos y el mensaje que deseemos. Dim Respuesta as Integer Respuesta=Message.Warning(“¿Desea Cerrar el Programa?”, “Si”, “No”) IF Respuesta=1 THEN Message.Info(“Gracias por usar el Programa”) Me.close ELSE Message.Info(“Ok, sigamos…”) ENDIF

Documentación https://www.gambas-es.org http://gambas.sourceforge.net/en/main.html http://gambaswiki.org/wiki/doc http://gambaswiki.org/wiki/doc/object-model?l=es http://gambaswiki.org/wiki/comp/gb.form/

Programas en consola: Hola Mundo Notas SELECT CASE Paridad Mayor de tres números Convertir €uros a Dolares Convertir grados centigrados a Fahrenheit Area del circulo Calcular precio con IVA Calculadora con Menu Cadenas Fecha y hora Divisibilidad por 2, 3, 5, 7, 11.

PROGRAMAS GRAFICOS CALCULADORA LOGIN-PASSWORD TABLAS MULTIPLICAR ABRIR Y MOSTRAR CONTENIDO ARCHIVO EUROCONVERSOR FAHRENHEIT CALCULAR VOLUMENES LETRA DEL NIF IMC