VB, VB y mas VB
Bienvenidos
¡¡Salvemos a Visual Basic !!
http://www.classicvb.org/petition/index.asp
Esta pagina no es precisamente el resultado de cientos de horas de diseño HTML.
Fue creada para soportar, en la medida de lo posible, un medio para publicar algunos detallitos sobre programación Visual Basic 6.0, para usarla como apoyo al grupo de noticias microsoft.public.es.vb
La información que contiene son solo algunas de las adaptaciones que he hecho a muchos códigos de terceras personas, o ejemplos completos, siempre tratando de dar referencia al autor de las mismas.

 
Archivo
Descripción
Cargar dos campos de una tabla asociados a un combobox, hace uso de un form que se muestra como TooltipText personalizado a medida que se recorre la lista del combo.
Como pasarle un recordset a un ActiveReports cargando el reporte desde un archivo XML (rpx) y enlazándolo al recordset en tiempo de ejecución.

Ajustar el tamaño de un form a las diferentes resoluciones de pantalla. Adaptación de los artículos de la KB MSDN:

182070 - HOWTO Create a Resolution-Independent Form

187562 - HOWTO Resize the Controls in SSTab When Form is Resized

AutoGrid.zip Ajustar automaticamente el ancho de columnas de un MSFLEXGRID, o MSHFlexGrid
Capacitores.xls Libro de Excel, con codigos de capacitores y codigos de color para resistencias. ¿Que tiene que ver con VB? 

Realmente no mucho, salvo algun codigo en VBA para realizar las conversiones, y manejar los colores de resistencias. Pero es util para todo el que se inicie en la electronica.

Cambiar el caption de un control RptLabel de un Datareport, en tiempo de ejecución.
Copiar dinámicamente el contenido de una hoja de Excel que esta siendo editada. Este código muestra un ejemplo de la Automatización con Excel, respondiendo a los eventos que se generan en una hoja de Excel abierta, y copiando todo su contenido dinámicamente a un MSHFlexGrid. Ejemplifica la llamada "referencia media" (Middle Binding) o mixta, usada para obtener una instancia de la aplicación Excel ya abierta
Asistente para la creación de Conection Strings ADO. Permite lanzar el cuadro de dialogo de configuración de Orígenes de Datos, y regresa una cadena con la Connection String seleccionada.
CrystalFotos.zip Ejemplo de cómo mostrar imagenes dinamicas en crystal reports.
Usa RDC (Report Designer Component) y el reporte enlazado a archivo de definicion de datos .TTX
Basado en un código de ejemplo publicado por Rubén Vigón, en el foro de microsoft.public.es.vb
CrystalFotos_Hibrido.zip El mismo ejemplo de arriba, mostrar fotos en un reporte Crystal, pero añade un enlace estático a una tabla de Access,
por lo que se tiene un resultado combinado de origen de datos desde archivo .TTX y base de datos específica.
Para que funcione el ejemplo, es necesario establecer nuevamente el origen hacia el archivo MDB, en el menú Database, Set Location.
CrystalImagenes.zip Ejemplo de como cambiar una imagen en Crystal Reports
Dependiendo de un valor que se le pase al reporte a través de un campo formula. Usa RDC (Report Designer Component) y el reporte enlazado a archivo de definicion de datos .TTX
Crystal_RDCyUDL.zip Crystal_RDCyUDL. Ejemplo muy simple de utilizacion de RDC (Report Designer Component)
de crystal reports, reporte enlazado a archivos .TTX (sin conexion a la base de datos)
y acceso a la base de datos desde una cadena de conexion guardada en un archivo .UDL
los archivos UDL (User Data Link) se pueden crear a partir de un archivo .txt vacio, al
cual se le cambia la extension a .UDL. despues, se da doble click sobre el archivo,
se establece la conexion y al terminar se guarda dicha conexion en modo texto,
pudiendo acceder al archivo tratandolo como un archivo ini o, especificando el
origen en la cadena de conexion , como en este ejemplo.
Para que funcione este ejemplo de conexion mediante archivo .UDL, es necesario que
se guarde en la carpeta C:\Crystal4Campos, o en su defecto, modificar la ruta en el
archivo UDL adjunto. Incluye imagenes demostrativas
 
Crystal_Subreports_TTX.zip Ejemplo de subreportes en Crystal Reports. Usando Report Designer Component (RDC) y reportes TTX enlazados al Recordset en tiempo de ejecucion.
Ejemplo de navegación mediante el uso de botones en un control DataGrid.
Demostración del uso de DataReports Jerárquicos (maestro-Detalle), usando Recorsets Jerárquicos mediante el proveedor MSDATASHAPE. Se muestran ambos métodos:
Enlazado desde un DataEnvironment y desde un Objeto ADO Connection, agregando el origen de datos dinámicamente.
Datareport_Etiquetas.zip Ejemplo de implementación de  un DataReport en columnas, util para la elaboración de etiquetas
Datareport_Update.zip Sencillo ejemplo de como actualizar el origen de datos de un DataReport (Metodo Refresh).
DDE.zip Pruebas de comunicacion DDE.
En este ejemplo se usan tres aplicaciones: MiEmisor, MiReceptor y MiReceptor2.
Siendo MiEmisor el "master" de la comunicacion. cuando éste se maximiza, minimiza o restaura, envía un mensaje DDE a las otras aplicaciones, para que hagan lo mismo.
Se usa el nombre del Exe cliente (MiReceptor y MiReceptor2) para registrar la comunicación DDE.
DockForm_Timer.zip Ejemplo sencillo de como acoplar formularios, estilo Winamp, usando
un timer que compara la posicion del formulario principal
Printer.Zip Spooler de Impresión. Adaptación Original del mismo código de Serge Baranovsky echa por PilarMMF. Permite seleccionar la impresora predeterminada (usando el mismo método de EstablecerImpresora.Zip) y monitorear el trabajo de las impresoras configuradas en el sistema.
Res.Zip

Pequeño ejemplo que ilustra el uso de un archivo de recursos .RES, 

mostrando 3 cadenas en ingles o español según la selección del usuario.

Establecer la impresora predeterminada.- Ejemplo adaptado de un código original de Serge Baranovsky muestra como seleccionar la impresora con el CommonDialog y volver a establecer la impresora predeterminada después de mandar a impresión. Trabaja con el Win.Ini ( o su equivalente, el Registro, en Win Xp/2k)
Demostración del uso de campos de fecha, hora, fecha y hora en consultas de inserción y selección en Mysql. Considerando el formato correcto para agregar/modificar la fecha.
FiltrosAnidados.zip Demostración del uso de la propiedad Filter
para un ADO Recordset. estableciendo Anidaciones de filtros (Filtro sobre filtro) y filtros simples (el comportamiento estándar de la propiedad Filter, cada vez que se establece, se elimina el filtro anterior).
Valida si se presionan las teclas F3(filtro simple), F4(filtro anidado) o F5(limpiar filtros).

Obtiene la cadena de conexion a la base de datos desde un archivo externo UDL, el cual es tratado como un archivo. INI. El archivo UDL es muy util para crear la cadena de conexion, ya que, si creamos un archivo .TXT y le cambiamos la extension a .UDL, despues lo abrimos, se abrira el Asistente pare creacion de Connection Strings, guardando la cadena de conexion tal cual la necesitamos para nuetro proyecto...

Editar celdas en un control FlexGrid (MSDN) Traducción y código de ejemplo de la pagina de Microsoft:

Editing Cells in a Hierarchical FlexGrid Spreadsheet

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vbcon98/html/vbconeditingcellsinhflexsprdsht.asp

FlexBorrarRegistros.zip Ejemplo de borrado de multiples registros de una base de datos usando una cadena SQL del tipo DELETE FROM al seleccionar estos registros(filas) en un control MShFlexGrid o MsFlexGrid
FlexClickDerecho.zip Muestra como obtener la celda de un MSHFlexGrid sobre la cual se 'hizo click derecho, y copiar el contenido de la misma a un menu deplegable.
FlexDragDrop.zip Como pasar datos entre dos MSHFlexGrid, Usando Drag and Drop.
FlexEditarColumnasPermitidas.zip Una muestra de la flexibilidad que podemos obtener con el control MSHFLEXGRID, al grado de que podemos crear un formulario ABC (Altas - Bajas - Cambios) muy completo con este control. Caracteristicas implementadas: Colorea la fila en la que se encuentra el cursor, para una mejor visualizacion, Formatea los datos segun su tipo de datos en la tabla, Muestra un control de captura acorde a cada tipo de datos de cada columna, por ejemplo las fechas se capturan con un DtPicker en la celda, Se puede bloquear la captura en ciertas columnas, Permite ordenar ascendente o descendentemente, al presionar la tecla F3 , Permite ejecutar otros eventos desde una columna de botones, teniendo uno por cada fila, gestiona el contenido de comillas simples en el texto, a fin de evitar errores de actualizacion en la BDD, y, autoajusta el ancho de la lista desplegable, cuando sea necesario. Ahora muestra un simbolo que emula un checkbox en celdas con valores Boolean, tomado de una idea de Leonardo Azpurua, del foro de microsoft.public.es.vb.

Este codigo se complementa y esta basado en todos los demas codigos para este control en esta pagina (y algunas ideas mas).

FlexPintaFila.zip Pintar grupos de filas (bandas) en un MSHFlexGrid jerarquico siguiendo la agrupacion de la primera columna combinada. Pinta de un color diferente las filas que pertenecen al mismo grupo o banda.
Ejemplo de uso de formularios modales, pasar datos entre formularios, mostrar un form de captura justo abajo del control que tiene el foco.Tambien muestra un ejemplo de como pasar al siguiente presionando la tecla ENTER
Form_CicloVida.zip Demostracion del ciclo de vida de un formulario. Y en que momento del ciclo de vida se ejecuta el evento Terminate.
Formatear un campo en el datareport. Muestra como establecer el formato de un campo rptTextBox dinámicamente en un Datareport enlazado en tiempo de ejecución.

Ejemplo de como mostrar un formulario tipo Popup (como el MSN Messenger) enviando parámetros y obteniendo resultados (en una Coleccion).
Incluye código ejemplo de implementacion de control de errores personalizado y depuracion en tiempo real dependiendo de un parametro proporcionado en la línea de comandos (Ver Depuracion de errores en el codigo)
Gustavo_Alegre_Reproductor.zip Ejemplo proporcionado por Gustavo Alegre (aquí su pagina), en el foro de VB, en Agosto de 2004.  Como reproducir un archivo de música MP3 (y demás) desde VB  , usando el control Multimedia
K149BC.zip Programador USB para PIC. Usa un PIC18f628 como controlador, y un conversor USB-RS232 de FTDI que emula el USB como puerto Serial RS-232. Gracias German Quintas.
KbdHook.zip Otro simple "gancho" de teclado. Usa subclasificación, y una rutina que identifica todas (o casi todas) las teclas que se presionen en el teclado. Adaptado del ejemplo de la API Guide para la funcion SetKeyboardState
Ejemplo de rutina personalizada para depuración de errores en tiempo de ejecución. Se basa en establecer el valor de una cadena (propiedad) a medida que se ejecuta el código. Permite, si se establece un parametro desde la línea de comandos ( /debug), guardar la depuración en un archivo .LOG. Asimismo, cuando se genera un error, guarda el contenido de la cadena de Control, y la fecha del erroren otro archivo .LOG
Llamar a un procedimiento publico de un form hijo, desde el menú del MDI Padre.
Ejemplo de creación de menús cargándolos desde un archivo de configuración externo, en este caso se ejecuta un archivo .VBS con código VbScript.

MonitorRS232.jpg

MonitorRS232_Cable.jpg

Monitor de comunicaciones por el puerto serial. Sencillo circuito que deriva las comunicaciones seriales entre dos dispositivos hacia otra computadora, sin afectar el flujo de datos entre los dos dispositivos. Usa 2 conectores DB9 Hembra, un conector DB9 Macho, Una Resistencia y Un diodo.

Para conectar el derivador a la PC monitor, usa un cable serial Uno a Uno entre un conector DB9 Macho a un DB9 Hembra.

El ejemplo que se provee con la instalación de VB: VBTERM.VBP es ideal para probar este circuito y la comunicación.

Teclado4x4-16F84-RS232.zip

Teclado Matricial 4 x 4 con transmisión por RS-232, usando un PIC16F84A a 4 MHZ. Incluye un ejemplo de aplicacion en VB para recibir los datos.

Adaptacion de codigo de los siguientes autores:

NORBERTO PELLEGRINI (CEKIT NRO 44 EDISON DUQUE)
http://www.todopic.com.ar/asm/teclados_keypad/

Universidad Antonio Nariño
http://www.oocities.com/micros_uan/cap51.html

Victor_Koch-Bloqueos_y_transacciones.pdf Bloqueos y transacciones ¡Delicias de las bases de datos!. Interesante documento redactado por Victor Koch, del grupo microsoft.public.es.vb, que explica en 10 pasos como manejar (de una manera inteligente), el tema de las actualizaciones concurrentes hacia la base de datos, mediante una correcta administración de las transacciones. ¡Gracias Victor!
MultipleDataSource.zip Implementacion practica de la leccion de la ayuda de MSDN ® "Crear una clase de colección propia: la casa de ladrillos". Tema "Ventajas en el correcto diseño orientado a objetos"

Establece la propiedad DataSource de dichos una serie de controles Textbox 
al Recordset que se especifique, teniendo antes estos controles relacionados en una coleccion .

Revisa el tema de la ayuda de MSDN ® "Crear clases de colección propias", mara ampliar la informacion

Palindromo.zip Palindromo.-Palabras o frases que se leen igual de izquierda a derecha o de derecha a izquierda. Ejemplo
Reemplazatexto.zip sugerencia de como reemplazar cierto numero de líneas de
código (texto predefinido) en un proyecto de VB. Usa FileSystemObject  para abrir cada archivo FRM, BAS o CLS del proyecto y reemplazar el texto buscado.
Realización de copias de respaldo de bases de datos MySQL en archivos .SQL usando código VB con tecnología ADO
Ejemplo de uso del control RichTextBox , con capacidad de cambiar el tipo de fuente, color, tamaño, formato Negrita, Cursiva y subrayado. Puede cargar, grabar e imprimir archivos RTF. También puede insertar y reconocer Hipervínculos :-)
Ejemplo de obtención de Recordset jerárquico desde Store Procedures parametrizados

Crear un Recordset jerárquico sin conectarse a una BDD Usando el proveedor MSDATASHAPE, pero sin acceder a la base de datos en busca de los registros jerarquizados. Demostración del articulo de la MSDN
How To Create Hierarchical Recordsets Programmatically,

http://support.microsoft.com/default.aspx?scid=kb;en-us;196029

Solo un datareport a la vez. Teniendo múltiples reportes, muestra una implementación de como mostrar solamente uno a la vez. Enlaza dinámicamente el reporte solicitado al Recordset de datos.
Ajustar el tamaño del cuadro de lista de un combobox al tamaño del elemento mas grande. :-)
Un documento de word atrapado en un picture. Abre un documento de Word usando ShellExecute, lo establece como hijo de un control picture, y lo integra a la aplicación usando GetObject para poder cambiarle algunas palabras provenientes desde los controles TextBox del formulario. No usa Referencias a Word x.x Object Model. Trabaja solo con algunas APIS y referencia tardía (Late Binding)
Envio de Correo electrónico a través de Winsock. Comentándose directamente con el servidor SMTP configurado.
Web Based Email System.DOC documento en Ingles escrito por Malik Muhammad Younus Awan, en el que explica los protocolos de envío/recepcion de correo y temas relacionados. Base fundamental para la creación del ejemplo WsockMail
click_en_marchoso.zip El maestro Pedro Maicas, http://inicia.es/de/pmaicas/  creo hace tiempo un control excelente para visualizar Imagenes GIF animadas en VB:Marchoso, pero, omitio algo:  el evento Click en el control. Este es una pequeña propuesta de solución, usando la funcion API SetCapture.
creaUDL.zip

Script en Visual Basic Script que permite crear un archivo de Vinculo de Datos .UDL. Desde la linea de comandos. Basado en el mensaje puesto por SoftJaén en el foro de Vb, el 2 de agosto de 2002
http://groups.google.com/group/microsoft.public.es.vb/msg/39b0da67bb4efde6

Revisar el codigo, para ejemplos de sintaxis de uso.

customStatusBar.zip

Ejemplo de implementacion de un Status bar personalizado, el texto de porcentaje cambia de color a medida que la barra pasa sobre él.
Adaptacion del código expuesto en
Ms KB 147809 HOWTO: Create a Setup-Like Status Bar in Visual Basic
http://support.microsoft.com/default.aspx?scid=kb;en-us;147809

Ejemplo de uso del control imgScan de kodak, para manejo del Scaner
Modulo BAS para acceder, leer y modificar el registro de Windows.
ini.zip Modulo BAS para lectura y escritura de Archivos .INI
wordwraptexto.zip
Ejemplo que muestra impresion de texto ajustado a un ancho de caracteres especifico. 
Incluye opcion a imprimir la primera linea (de todo el texto) con sangria.
Espero te sean de utilidad, tal como me han sido a mi, saludos y suerte
Counter
1 1