domingo, 28 de abril de 2013

Conexión de Visual Basic 6 con Access 2010


Escenario

Sistema Operativo: Windows 7 Enterprise
Lenguaje de Programación: Visual Basic 6.0
Base de Datos: Access 2010
Acceso a datos: Microsoft ADO 2.8 Library

Nombre de la base de datos: bd.accdb
Clave de la base de datos: 12345

Implementación
  1. Referenciar en Visual Basic: Microsoft Activex Data Objects 2.8 Library
  2. Escribir el siguiente código:
Dim Cn As New ADODB.Connection
Cn.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & App.Path & "\bd.accdb;Jet OLEDB:Database Password=12345;"
Cn.Open Cn.ConnectionString, "admin", ""

Resaltar una fila en un MSFlexGrid (VB6)


Escenario

Sistema Operativo: Windows 7 Enterprise
Lenguaje de Programación: Visual Basic 6.0

Implementación

Public Sub pResaltarFila(ByVal poGrilla As MSFlexGrid)
    Dim I As Long
    With poGrilla
        If .Rows = 0 Then Exit Sub
        .Col = 0
        .Row = .Row
        .ColSel = .Cols - 1: .RowSel = .Row
        .SetFocus
    End With
End Sub

Centrar un Form en la pantalla (VB6)


Escenario

Sistema Operativo: Windows 7 Enterprise
Lenguaje de Programación: Visual Basic 6.0

Implementación

Public Sub Centrar(ByVal poForm As Form)
    With poForm
        .Move (Screen.Width - .Width) \ 2, (Screen.Height - .Height) \ 2
     End With
End Sub

Dar formato en un MSFlexGrid (VB6)


Escenario

Sistema Operativo: Windows 7 Enterprise
Lenguaje de Programación: Visual Basic 6.0

Implementación

Private Sub pFormatoDeGrilla()
    Dim I As Integer
    With flg
         'Añade fila
        .AddItem ""
        For I = 0 To 1
            'Define cantidad de columnas
            .Cols = I + 1
            'Posiciona cursor en la primera fila para dar formato
            .Col = I: .Row = 0
            'Establece ancho de columnas      
            .ColWidth(I) = Choose(I + 1, 0, 1400)
            'Establece alineación de columnas
            .ColAlignment(I) = Choose(I + 1, 1, 1)
            'Establece en negritas el titulo de cada cabecera
           'de columna
            .CellFontBold = True
            'Establece el texto de cada cabecera de columna
            .Text = Choose(I + 1, "Codigo", "Descripción")
        Next I
    End With
End Sub

Delay (Retraso) en Visual Basic 6


EscenarioSistema Operativo: Windows 7 Enterprise
Lenguaje de Programación: Visual Basic 6.0

Implementación

Public Sub pEsperarNSegundos(ByVal pnCtadSegundos As Integer)
    Dim sFecha As String
    sFecha = Format(Time, "hh:mm:ss")
    Do While True
        If DateDiff("s", sFecha, Format(Time, "hh:mm:ss")) > pnCtadSegundos Then
            Exit Do
        End If
    Loop
End Sub

Llamada: mADO.Otros_pEsperarNSegundos 3 'Espera 3 segundos