Cómo utilizar la API de diálogo comunes en una base de datos de Access 2003 o Access 2007

Seleccione idioma Seleccione idioma
Id. de artículo: 888695 - Ver los productos a los que se aplica este artículo
Expandir todo | Contraer todo

En esta página

INTRODUCCIÓN

En este artículo se describe cómo utilizar la API de diálogo comunes en Microsoft Office Access 2003 o en Microsoft Office Access 2007 para reemplazar la funcionalidad de cuadro de diálogo comunes que se incluye sólo en Microsoft Office 2000 Developer Edition o en Office XP Developer Edition.

Más información

Microsoft proporciona ejemplos de programación con fines ilustrativos únicamente, sin ninguna garantía tanto expresa como implícita. Esto incluye, entre otras, las garantías implícitas de comerciabilidad e idoneidad para un fin determinado. Este artículo se supone que está familiarizado con el lenguaje de programación que se muestra y con las herramientas que se utilizan para crear y depurar procedimientos. Los ingenieros de soporte técnico de Microsoft pueden explicarle la funcionalidad de un determinado procedimiento, pero no modificarán estos ejemplos para ofrecer mayor funcionalidad ni crearán procedimientos que cumplan sus requisitos específicos.

Pasos para reemplazar la funcionalidad de Common Dialog

Microsoft Office Access 2003

  1. En Access, abra la base de datos ejemplo que se denomina Neptuno.mdb.

    Nota Normalmente se encuentra la base de datos Neptuno.mdb para Access 2003 en Office\OFFICE11\Samples de programa\Microsoft c:\Archivos carpeta.
  2. Bajo objetos en la ventana base de datos Neptuno, haga clic en formularios .
  3. En la barra de herramientas de la ventana base de datos , haga clic en nuevo .
  4. En el cuadro de diálogo Nuevo formulario , haga clic en Vista Diseño y, a continuación, haga clic en Aceptar .
  5. Agregue un cuadro de texto a Form1, haga clic con el botón secundario del mouse en el cuadro de texto y, a continuación, haga clic en Propiedades .
  6. Haga clic en la ficha todas , haga clic en nombre , escriba Text1 y, a continuación, cerrar el cuadro de diálogo de Propiedades .
  7. Haga clic con el botón secundario en el control de etiqueta que está asociado con el cuadro de texto Text1 , haga clic en Propiedades y, a continuación, haga clic en la ficha todas .
  8. Haga clic en título , escriba Text1 y, a continuación, cerrar el cuadro de diálogo de Propiedades .
  9. Agregue un botón de comando a Form1 , haga clic con el botón secundario del mouse en el botón de comando, haga clic en Propiedades , haga clic en nombre , escriba Command1 , haga clic en título y, a continuación, escriba Command1 .
  10. Haga clic en la ficha evento , haga clic en [Procedimiento de evento] en la lista Al hacer clic y, a continuación, haga clic en el botón de puntos suspensivos para iniciar el Editor de Microsoft Visual Basic.
  11. Modifique el código en el procedimiento Command1_Click al siguiente:
    Private Sub Command1_Click()
        Me!Text1 = LaunchCD(Me)
    End Sub
  12. On the Insert menu, click Module, and then insert the following code into Module1:
    Private Declare Function GetOpenFileName Lib "comdlg32.dll" Alias _
    "GetOpenFileNameA" (pOpenfilename As OPENFILENAME) As Long
    
    Private Type OPENFILENAME
        lStructSize As Long
        hwndOwner As Long
        hInstance As Long
        lpstrFilter As String
        lpstrCustomFilter As String
        nMaxCustFilter As Long
        nFilterIndex As Long
        lpstrFile As String
        nMaxFile As Long
        lpstrFileTitle As String
        nMaxFileTitle As Long
        lpstrInitialDir As String
        lpstrTitle As String
        flags As Long
        nFileOffset As Integer
        nFileExtension As Integer
        lpstrDefExt As String
        lCustData As Long
        lpfnHook As Long
        lpTemplateName As String
    End Type
    
    Function LaunchCD(strform As Form) As String
        Dim OpenFile As OPENFILENAME
        Dim lReturn As Long
        Dim sFilter As String
        OpenFile.lStructSize = Len(OpenFile)
        OpenFile.hwndOwner = strform.hwnd
        sFilter = "All Files (*.*)" & Chr(0) & "*.*" & Chr(0) & _
          "JPEG Files (*.JPG)" & Chr(0) & "*.JPG" & Chr(0)
        OpenFile.lpstrFilter = sFilter
        OpenFile.nFilterIndex = 1
        OpenFile.lpstrFile = String(257, 0)
        OpenFile.nMaxFile = Len(OpenFile.lpstrFile) - 1
        OpenFile.lpstrFileTitle = OpenFile.lpstrFile
        OpenFile.nMaxFileTitle = OpenFile.nMaxFile
        OpenFile.lpstrInitialDir = "C:\"
        OpenFile.lpstrTitle = "Select a file using the Common Dialog DLL"
        OpenFile.flags = 0
        lReturn = GetOpenFileName(OpenFile)
            If lReturn = 0 Then
                MsgBox "A file was not selected!", vbInformation, _ 
                  "Select a file using the Common Dialog DLL"
             Else
                LaunchCD = Trim(Left(OpenFile.lpstrFile, InStr(1, OpenFile.lpstrFile, vbNullChar) - 1)) 
             End If
    End Function
    
  13. En el menú Depurar , haga clic en Compilar Neptuno y, a continuación, cierre el Editor de Visual Basic.
  14. En el menú Ver , haga clic en formulario Ver .
  15. Haga clic en Command1 y, a continuación, haga clic en un archivo en la ventana que se abre.

    La ruta de archivo aparece en el cuadro de texto Text1 .

Microsoft Office Access 2007

  1. En Access 2007, abra la base de datos ejemplo que se denomina Northwind.accdb.
  2. En la ficha crear , haga clic en formulario en el grupo formularios .
  3. En la ficha formato , haga clic en la flecha abajo situada debajo de vista y, a continuación, haga clic en Vista Diseño .
  4. Agregue un cuadro de texto a Form1, haga clic con el botón secundario del mouse en el cuadro de texto y, a continuación, haga clic en Propiedades .
  5. Haga clic en la ficha todas , haga clic en nombre y, a continuación, escriba Text1 .
  6. Haga clic con el botón secundario en el control de etiqueta que está asociado con el cuadro de texto Text1 , haga clic en Propiedades y, a continuación, haga clic en la ficha todas .
  7. Haga clic en título y, a continuación, escriba Texto1 .
  8. Agregue un botón de comando a Form1 , haga clic con el botón secundario del mouse en el botón de comando, haga clic en Propiedades , haga clic en nombre , escriba Command1 , haga clic en título y, a continuación, escriba Command1 .
  9. Haga clic en la ficha evento , haga clic en [Procedimiento de evento] en la lista Al hacer clic y, a continuación, haga clic en el botón de puntos suspensivos (... ) para iniciar el Editor de Microsoft Visual Basic.
  10. Modifique el código en el procedimiento Command1_Click similar al siguiente ejemplo de código.
    Private Sub Command1_Click()
        Me!Text1 = LaunchCD(Me)
    End Sub
  11. On the Insert menu, click Module, and then insert code that resembles the following code example into Module1.
    Private Declare Function GetOpenFileName Lib "comdlg32.dll" Alias _
    "GetOpenFileNameA" (pOpenfilename As OPENFILENAME) As Long
    
    Private Type OPENFILENAME
        lStructSize As Long
        hwndOwner As Long
        hInstance As Long
        lpstrFilter As String
        lpstrCustomFilter As String
        nMaxCustFilter As Long
        nFilterIndex As Long
        lpstrFile As String
        nMaxFile As Long
        lpstrFileTitle As String
        nMaxFileTitle As Long
        lpstrInitialDir As String
        lpstrTitle As String
        flags As Long
        nFileOffset As Integer
        nFileExtension As Integer
        lpstrDefExt As String
        lCustData As Long
        lpfnHook As Long
        lpTemplateName As String
    End Type
    
    Function LaunchCD(strform As Form) As String
        Dim OpenFile As OPENFILENAME
        Dim lReturn As Long
        Dim sFilter As String
        OpenFile.lStructSize = Len(OpenFile)
        OpenFile.hwndOwner = strform.hwnd
        sFilter = "All Files (*.*)" & Chr(0) & "*.*" & Chr(0) & _
          "JPEG Files (*.JPG)" & Chr(0) & "*.JPG" & Chr(0)
        OpenFile.lpstrFilter = sFilter
        OpenFile.nFilterIndex = 1
        OpenFile.lpstrFile = String(257, 0)
        OpenFile.nMaxFile = Len(OpenFile.lpstrFile) - 1
        OpenFile.lpstrFileTitle = OpenFile.lpstrFile
        OpenFile.nMaxFileTitle = OpenFile.nMaxFile
        OpenFile.lpstrInitialDir = "C:\"
        OpenFile.lpstrTitle = "Select a file using the Common Dialog DLL"
        OpenFile.flags = 0
        lReturn = GetOpenFileName(OpenFile)
            If lReturn = 0 Then
                MsgBox "A file was not selected!", vbInformation, _ 
                  "Select a file using the Common Dialog DLL"
             Else
                LaunchCD = Trim(Left(OpenFile.lpstrFile, InStr(1, OpenFile.lpstrFile, vbNullChar) - 1)) 
             End If
    End Function
    
  12. En el menú Depurar , haga clic en Compilar Neptuno y, a continuación, cierre el Editor de Visual Basic.
  13. En la ficha formato , haga clic en la flecha abajo situada debajo de vista y, a continuación, haga clic en Vista formulario .
  14. Haga clic en Command1 y, a continuación, haga clic en un archivo en la ventana que se abre.

    La ruta del archivo aparece en el cuadro de Text1 .

Propiedades

Id. de artículo: 888695 - Última revisión: lunes, 04 de junio de 2007 - Versión: 4.3
La información de este artículo se refiere a:
  • Microsoft Office Access 2007
  • Microsoft Office Access 2003
Palabras clave: 
kbmt kbsampledatabase kbprogramming kbautomation kbexpertiseinter kbhowto KB888695 KbMtes
Traducción automática
IMPORTANTE: Este artículo ha sido traducido por un software de traducción automática de Microsoft (http://support.microsoft.com/gp/mtdetails) en lugar de un traductor humano. Microsoft le ofrece artículos traducidos por un traductor humano y artículos traducidos automáticamente para que tenga acceso en su propio idioma a todos los artículos de nuestra base de conocimientos (Knowledge Base). Sin embargo, los artículos traducidos automáticamente pueden contener errores en el vocabulario, la sintaxis o la gramática, como los que un extranjero podría cometer al hablar el idioma. Microsoft no se hace responsable de cualquier imprecisión, error o daño ocasionado por una mala traducción del contenido o como consecuencia de su utilización por nuestros clientes. Microsoft suele actualizar el software de traducción frecuentemente.
Haga clic aquí para ver el artículo original (en inglés): 888695

Enviar comentarios

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com