Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Microsoft Office (Word, Excel, Outlook и т.д.) (http://forum.oszone.net/forumdisplay.php?f=115)
-   -   MS Access: Настройка пользовательского интерфейса (http://forum.oszone.net/showthread.php?t=220202)

Ansell 11-11-2011 12:05 1792881

MS Access: Настройка пользовательского интерфейса
 
Как можно избавиться от оболочки MS Access при запуске БД. Т.е. Главную форму я создал, назначил ее формой просмотра, а теперь мне нужно, чтобы при ее запуске, только она и отображалась на экране.

okshef 11-11-2011 18:44 1793161

Файл - Параметры - Настройка ленты - отключите все стандартные панели.

Настройка ленты - Access - Office.com

Настраиваем ленту в Office 2010 под себя

Ansell 14-11-2011 09:58 1794681

Это все я уже нашел в настройках. Таким способом можно удалить панели инструментов и навигации, но окно access все равно остается. Мне же нужно, чтобы отображалась только моя форма.

Iska 14-11-2011 12:36 1794744

Цитата:

Цитата Ansell
но окно access все равно остается. Мне же нужно, чтобы отображалась только моя форма. »

Разве такое возможно?

Вам, скорее, надо что-то наподобие такого:
Развертывание приложений Access 2007
Развертывание приложения Access 2007 - Access - Office.com

P.S. Соответствующие статьи под 2010 может и есть, но я не сходу нашёл.

Ansell 14-11-2011 14:22 1794794

Вложений: 1
Развертывание это тоже не то.
Цитата:

Цитата Iska
Разве такое возможно? »

Возможно. Пример в прикрепленном файле. Правда, я не могу понять как это сделано. Скорее всего с помощью кода VB.

Iska 14-11-2011 14:44 1794814

Цитата:

Цитата Ansell
Правда, я не могу понять как это сделано. Скорее всего с помощью кода VB. »

Ну, да, это WinAPI:
Код:

Option Compare Database
Private Declare Function SetWindowPos Lib "user32" (ByVal hWnd As Long, ByVal hwndInsertAfter As Long, ByVal X As Long, ByVal Y As Long, _
ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long

Private Declare Function apiShowWindow Lib "user32" _
    Alias "ShowWindow" (ByVal hWnd As Long, _
          ByVal nCmdShow As Long) As Long
Option Explicit

Public Function hidde_on()
Dim HWND_TOPMOST, SWP_SHOWWINDOW
SetWindowPos Application.hWndAccessApp, HWND_TOPMOST, -30, -30, 0, 0, SWP_SHOWWINDOW
End Function
Public Function hidde_off()
Dim HWND_TOPMOST, SWP_NOACTIVATE, SWP_SHOWWINDOW
SetWindowPos Application.hWndAccessApp, HWND_TOPMOST, 0, 0, 1200, 1200, SWP_SHOWWINDOW
' 0, 0, 1200, 1200, SWP_SHOWWINDOW ' С этими значениями можно поиграть
' зависит от размера экрана
End Function

А в чём у Вас проблема? Пробуйте аналогично. Насколько устойчиво сие, правда, будет работать — не знаю.

Ansell 14-11-2011 14:52 1794819

Ну я никогда не сталкивался с программирование в Access. Понятия не имею даже где это вводится.

Iska 14-11-2011 15:36 1794847

Цитата:

Цитата Ansell
Ну я никогда не сталкивался с программирование в Access. Понятия не имею даже где это вводится. »

Вон оно в чём дело… Откройте Microsoft Access. Откройте выложенную Вами базу данных, удерживая при этом нажатой клавишу «Shift». После чего нажмите «Alt-F11». Попадёте в редактор VBA. Искомый код находится в модуле «WinAccess».

P.S. Вот именно для того, чтобы исключить возможность несанкционированного доступа к базе и/или коду — и нужно т.н. «развёртывание». После того, как приложение будет окончательно готово — делаете *.accde/*.accdc и уже его распространяете. Если у Вас уже развёрнут Microsoft Access на целевых машинах — отдельный пакет Среда выполнения Microsoft Access 2010 не нужен.

Ansell 15-11-2011 15:33 1795628

Модуль скопировал, назначил на событие "открыть". Главную форму открывает так как я хотел, но не показывает ни один из отчетов. Они, видимо, открываются, но на экране не отображаются.
Решил отказаться от этой затеи. Пусть все будет в дочерних окнах. Спасибо за помощь.


Время: 16:14.

Время: 16:14.
© OSzone.net 2001-