More computer science! This time I brushed up on my Visual C# skills before our assignment was set. The photo of the forest was from the weekend walk for media studies, it’s such a nice place.
seen from Netherlands
seen from Finland
seen from United States

seen from United States
seen from United States

seen from United States

seen from Canada
seen from India

seen from France
seen from China
seen from India
seen from Switzerland
seen from China
seen from United States
seen from Yemen
seen from United States

seen from United States
seen from Russia

seen from United Kingdom
seen from Canada
More computer science! This time I brushed up on my Visual C# skills before our assignment was set. The photo of the forest was from the weekend walk for media studies, it’s such a nice place.
Controles Estandar
Los controles más utilizados en Visual Studio son:
Etiquetas (Label).
Las etiquetas son controles en los cuales sólo se puede editar texto a través de código, o sea, a través de instrucciones y sentencias. Su propiedad más importante es la propiedad Caption que es el texto que habrá en la etiqueta. También al respecto serán útiles sus propiedades Font y Forecolor. La propiedad Border permite dar o no un efecto de bajorrelieve a la etiqueta. La propiedad Autosize permite ajustar el tamaño de la etiqueta al texto contenido en ella, y la propiedad WordWrap permite el texto en múltiples líneas. Admiten eventos pero no es común que se utilicen.
Cajas de Texto (Textbox).
Son los controles más habituales para ingresar datos. Su propiedad más importante es la propiedad Text, la cual es el texto que aparece en la caja y, por ende, las propiedades Font y Forecolor. La propiedad Multiline permite ingresar texto en más de una línea. La propiedad Alignment tiene tres valores para texto alineado a la izquierda (0), a la derecha (1) y centrado (2). La propiedad Locked determina si se bloquea la modificación del texto de la caja de texto. Otras propiedades son Password para que no se vean los caracteres que se digitan, sino solamente uno que se especifica en la propiedad; SelStart sirve para posicionar el cursor en algún lugar del texto, SelText SelLength indica el número de caracteres seleccionados y MaxLength se utiliza para determinar el número máximo de caracteres que puede contener. El método más importante es el método SetFocus.
Botones de Comando (CommandButton).
La utilidad de estos controles es la de ejecutar acciones y su evento por excelencia es el evento Click, aunque también soporta otros eventos KeyPress, LostFocus, etc. Su propiedad más importante es la propiedad Caption la cual establecerá el título que mostrará el botón. Si esta propiedad se añade el carácter & delante de otro, éste otro aparecerá subrayado y mediante la combinación de la tecla Alt + caracter se accederá al evento click del botón. Esto es válido para la propiedad Caption de varios controles. Si se establece su propiedad Style a Graphical y su propiedad Picture se le adjudica un ícono, el botón aparecerá con ese ícono. Otras propiedades importantes de este control son sus propiedades Enabled y Visible.
Marcos (Frame).
El marco es un recuadro con un título en su parte superior izquierda (el cual se cambia cambiando su propiedad Caption) y sirve para agrupar controles. Su mayor utilidad radica en agrupar botones de opción, lo cual permite que sólo uno esté activo a la vez.
Botones de Opción (Option).
Los botones de opción permiten decidir acciones, eligiendo entre opciones. Para que esto ocurra deben estar colocados dentro de un Marco. Se selecciona el marco y luego se colocan los botones de opción dentro. Sus propiedades más importantes son la propiedad Value que tiene dos valores (True o False) que indica si el botón estará activo o no; dentro de un marco solamente un botón podrá tener su propieda Value=True. La propiedad Caption especifica el texto que contendrá el control.
Casillas de Verificación (CheckBox).
Estos controles también sirven para decidir acciones, pero no se excluyen entre ellos. Al igual que los botones de opción sus propiedades más importantes son las propiedades Value y Caption. En el caso de la propiedad Value, esta podrá tener los valores Checked (tendrá un signo de OK en su interior) y Unchecked (la casilla estará vacía). Su evento más importante es el evento Click.
Barras de Desplazamiento (Scroll Bar).
Las Barras de Desplazamiento son horizontales o verticales, pero ambas son iguales en eventos, propiedades y métodos. Los eventos por excelencia de estos controles son los eventos Change y Scroll. Estos eventos ocurren al mover una barra de desplazamiento (cambiar su propiedad Value), pero la diferencia está en que el evento Change ocurre cuando se terminó de arrastrar la barra y el evento Scroll ocurre mientras se arrastra la barra. Tres propiedades importantes de este control son las propiedades Min, Max y Value. Las propiedades Min y Max son los valores mínimos y máximos que podrá tener la barra y la propiedad Value es el valor que tenga la barra en un momento dado y el que se cambia al mover la barra. La propiedad Value no podrá ser entonces, mayor que la propiedad Max ni menor que la propiedad Min.
Cuadros de Lista y Cuadros Combinados (ListBox y ComboBox).
Los cuadros de lista son controles donde se pueden listar elementos, ya sean numéricos, alfanuméricos o alfabéticos. Los cuadros combinados combinan las cualidades de los cuadros de lista y las cajas de texto, sin embargo tienen las propiedades y métodos de los cuadros de lista y se estudian en forma conjunta. Los eventos más usuales son los eventos Click, DblClick y Change. Los elementos de una lista o un cuadro combinado tienen un índice o sea, un número que los identifica (al igual que los arrays) dentro de la lista y se comienzan a numerar por 0 para el primer elemento, 1 para el segundo, etc... Las siguientes son las propiedades de estos controles:
ListIndex: es el índice del elemento actualmente seleccionado en el control. Si no hay ningún elemento activo el valor de Listindex es -1.
List: esta propiedad devuelve el texto contenido en uno de los registros del control. Lleva por argumento el parámetro Indice el cual es el índice del elemento a recuperar.
ListCount: esta propiedad de solo lectura indica la cantidad de elementos que contiene un control.
MultiSelect: esta propiedad de los cuadros de lista especifica si se pueden seleccionar más de un elemento a la vez (True) o no (False).
Sorted: ordena alfabéticamente los elementos dentro del control.
Selected(Indice): indica si un elemento está seleccionado o no. El argumento Indice es el índice del elemento. También pueden seleccionarse elementos a través de código mediante esta propiedad.
DropCombo: para los cuadros combinados esta propiedad indica la forma en que se presentará el cuadro combinado.
Los métodos de estos controles son:
Additem(Elemento,Indice): este método permite ingresar elementos al control. El argumento Elemento es obligatorio y es el elemento que se ingresará y el argumento Indice es opcional y especifica el índice que tendrá el elemento. Si no se coloca este argumento, el elementos se colocará al final de la lista.
Removeitem(Indice): este método permite quitar elementos del control. Lleva el argumento Indice que es el índice del elemento a quitar.
Clear: elimina todos los elementos de un control.
Control Timer (Timer).
Este control sirve para realizar en forma periódica determinadas tareas. Admite un único evento: el evento Timer el cual se produce cuando la propiedad Interval es mayor que 0 y cuando la propiedad Enabled está a True. Este control no tiene una interfaz gráfica por lo tanto al ejecutar la aplicación que lo utilice no visualizará el control, solamente se verán sus efectos controlados por código. Sus propiedades más importantes son Enabled e Interval. La propiedad Enabled activa o desactiva el evento Timer; asimismo la propiedad Interval=0 desactiva el evento Timer. La propiedad Interval es el intervalo en milisegundos en que ocurrirá el evento Timer una y otra vez.
Drives (Drive).
Este control es uno de los controles estándar para la gestión de archivos. Es un cuadro combinado con las unidades de disco existentes como elementos. El evento más sobresaliente de este control es el evento Change y su propiedad, la propiedad Drive; ya que con este evento y esta propiedad se puede relacionar el control con los otros dos controles de ficheros.
Lista de Directorios (DirList).
Este control muestra los directorios de un disco y, haciendo doble clic en uno de ellos, se muestran los subdirectorios, etc. Su evento más importante es el evento Change y su propiedad, la propiedad Path. Con esto se relaciona este control con los demás controles de fichero. La propiedad Path es una cadena de texto con la ruta a un directorio (por ejemplo C:\Windows\Media).
Lista de Archivos (FileList).
Este control es un cuadro de lista que muestra los archivos que hay en un directorio. Para este control, los eventos más importantes serán los eventos Click y DblClick. Mediante el código correspondiente en estos eventos se podrían abrir archivos, ejecutar programas, etc. La propiedad Path es una cadena de texto que es la ruta del directorio que contiene los archivos mostrados; a través de la propiedad Pattern se puede especificar qué tipos de archivo se mostrarán en este control. Si la propiedad Pattern es *.* (por defecto) se mostrarán todos los archivos, si se le da por valor *.doc, se mostrarán solamente los archivos con extensión doc; si tiene por valor *.doc;*.txt se mostrarán sólo los archivos con extensión txt y doc.
Líneas (Line).
Este control es meramente decorativo y no tiene eventos ni métodos. Las propiedades X1, Y1, X2 e Y2 son las coordenadas de sus extremos, las que pueden cambiarse a través de código. La propiedad BorderWidth permite definir el grosor de la línea.
Formas (Shape).
Al igual que las líneas, las formas no tienen ni eventos ni métodos, pero tienen más propiedades que las líneas. La propiedad Shape permite definir qué figura geométrica tendrá (círculo, rectángulo, rectángulo ovalado, elipse, etc.). La propiedad BackColor define el color de fondo de la forma, BackStyle tiene dos valores: Opaque y Transparent. Si la propiedad está en Transparent no se verá el color de fondo. La propiedad FillStyle permite determinar el relleno de la figura (con líneas diagonales, cuadriculado, etc.) y FillColor determina el color de dichas líneas de relleno. BorderStyle determina el tipo de línea que conformará el borde y BorderColor determinará el color del borde.
DataControl (Data).
Este control Data permite tener un acceso sencillo a bases de datos. Pueden ser bases de datos de Access (*.mdb) o dBase (*.dbf), Paradox (*.db), etc. a través de un ISAM instalable. Visual Basic tiene una herramienta para crear bases de datos de cualquiera de los tipos ya mencionados (y más), llamada VisData. Este tema se tratará más adelante.