Программирование на Visual Basic | Microsoft Access. Отображение/скрытие окна приложения

В этом разделе сайта находятся примеры из сборника программ "Архив файлов на Microsoft Access". В нем рассказывается о программировании форм, отчетов, таблиц и других объектов. Используйте этот архив для изучения работы с приложением Microsoft Office Access и программированием на Visual Basic for Application. Тем кто уже знаком с VBA, используйте поиск для нахождения кодов. Наберите, например, DAO, ADO, Recordset и найдете нужную ссылку для решения проблемы с программированием

Microsoft Access. Отображение/скрытие окна приложения

05. Этот пример показывает как с использованием API интерфейса и других действий изменять главное окно Access.

' Константы отображения
Private Const SW_HIDE = 0
Private Const SW_SHOWNORMAL = 1
Private Const SW_NORMAL = 1
Private Const SW_SHOWMINIMIZED = 2
Private Const SW_SHOWMAXIMIZED = 3
Private Const SW_MAXIMIZE = 3
Private Const SW_SHOWNOACTIVATE = 4
Private Const SW_SHOW = 5
Private Const SW_MINIMIZE = 6
Private Const SW_SHOWMINNOACTIVE = 7
Private Const SW_SHOWNA = 8
Private Const SW_RESTORE = 9
Private Const SW_SHOWDEFAULT = 10
Private Const SW_MAX = 10

' Функция управляет отображением окна
Private Declare Function apiShowWindow Lib "user32" Alias "ShowWindow" _
    (ByVal hWnd As Long, _
     ByVal nCmdShow As Long) As Long

' Команды в котором создаются приложения
Dim appAcc As Access.Application

'  Отобразить окно
Private Sub butON_Click()
Dim s As String
    On Error Resume Next
    ' Выход из приложения
    Form_Close
    
    ' Открываем окно
    Set appAcc = New Access.Application
    s = Application.CurrentProject.Path  "\"  "la_form.mdb"
    appAcc.OpenCurrentDatabase (s)
    appAcc.Visible = True
    apiShowWindow appAcc.hWndAccessApp, Me.grShow
End Sub

'  Окно базы данных
Private Sub butWinDataBase_Click()
    DoCmd.SelectObject acForm, "Пример 05", True
    If Me.butWinDataBase = False Then
        DoCmd.RunCommand acCmdWindowHide
    End If
    DoCmd.SelectObject acForm, "Пример 05", False
End Sub

' Выход из системы
Private Sub Form_Close()
    On Error Resume Next
    appAcc.Quit acQuitSaveNone
    Err.Clear
End Sub

Добавить комментарий

Loading