Закрыть панель навигации доступа, даже если нет результатов поиска

Вы пропустили размещение одиночных кавычек вокруг ваших ключей массива:

$ _ POST [email]

должно быть:

$ _ POST ['email']

0
задан Gener4tor 11 March 2019 в 16:17
поделиться

2 ответа

DoCmd.NavigateTo "acNavigationCategoryModifiedDate"
DoCmd.NavigateTo "acNavigationCategoryObjectType"
DoCmd.RunCommand acCmdWindowHide

Чтобы команда DoCmd.RunCommand acCmdWindowHide успешно закрыла панель навигации, панель навигации должна иметь фокус. Но чтобы окно доступа имело фокус, элемент управления внутри окна должен иметь фокус. Оказывается, команда NavigateTo никогда не поместит фокус в текстовое поле Поиск, поэтому, если результаты поиска пустые и нечего выбирать, то фокус не изменится на панель навигации (даже хотя технически выбранная группа панели навигации могла быть обновлена.)

Если вы поиграете с панелью навигации достаточно долго, вы обнаружите, что результаты поиска навигации и текстовое поле сбрасываются при переключении между навигацией наивысшего уровня категории. Поэтому мой предложенный код ... он меняется между двумя категориями навигации, так что результаты поиска очищаются во время этого действия, так что окно навигации в конечном итоге получает фокус, когда один из его перечисленных объектов, наконец, получает фокус.

(Действительно, использование команды NavigateTo в этом случае - просто глупый трюк, чтобы сосредоточиться на панели навигации. Это просто еще один вопиющий недостаток интерфейса доступа - отсутствие прямых команд / объектов для управления панелью навигации .)

0
ответ дан C Perkins 11 March 2019 в 16:17
поделиться

Я предлагаю вам не писать код, а просто использовать встроенные параметры доступа, чтобы предотвратить (скрыть) панель навигации.

Так что работай, а потом нажми клавишу Shift во время запуска. (обходной ключ переключения).

Танец разработки клавиши Shift:

Вы обнаружите, что можете запускать + разрабатывать много кода и работать с формами / отчетами без необходимости выхода. Тем не менее, вы по-прежнему сделали обход запуска ключа переключения. Причина, конечно, в том, что при запуске ваш код вполне может скрыть ленту. (Или запустить кастомную). То же самое касается формы запуска - она ​​может запускать кучу кода, запрашивать вход в систему, проверять ссылки на таблицы.

А затем есть настройки запуска, которые у вас есть. Скорее всего, у вас есть стартовая форма (вы не хотите, чтобы она работала). Скорее всего, вы отключили навигационную панель дисплея, но вам это нужно во время разработки. А что, если у вас есть заказная лента? (Опять настройка в инструменты-> параметры). И используйте специальные клавиши - снова выключен для пользователей, но ТРЕБУЕТСЯ для разработчиков.

А потом есть макрос автоключей. Это используется для повторного назначения клавиши F1 (справка - либо отключите, либо запустите собственную настраиваемую справку - например, файл PDF или слово).

И любое повторное назначение, такое как, скажем, f12 для всплытия некоторого пользовательского окна поиска и т. Д.

Итак, все эти пользовательские настройки будут довольно БОЛЬШИМ количеством настроек. Многие будут из инструментов-> параметры (основная форма, лента и т. Д.). А некоторые будут из вашего кода.

Вы ДЕЙСТВИТЕЛЬНО (но ДЕЙСТВИТЕЛЬНО) не можете закодировать все эти настройки, а некоторые все равно требуют перезапуска. В типичном приложении действительно будет много настроек, которые будут изменены для ваших пользователей по сравнению с вами как разработчиком.

При запуске вы удерживаете клавишу Shift. Это не только предотвратит запуск вашего кода запуска, но также и ваши настройки запуска - даже такие вещи, как панель навигации, и особенно область инструментов -> настройки (клавиша Shift игнорирует большинство этих настроек).

1110 Итак, в течение дня разработки, я буду танцевать на клавишах весь день. Тем не менее, есть два трюка и сочетания клавиш, которые вы можете использовать здесь, чтобы свести к минимуму этот выход + повторно войти вниз до скучного рева. Один замечательный тик - всегда размещать компактную кнопку восстановления на QAT. Таким образом, кнопка QAT теперь ОДНАМ щелчком мыши и всегда доступна для вас. Так что, если я работаю с формой в режиме конструктора, часто бывает достаточно перехода в режим просмотра, но в тех случаях, когда мне нужен полный выход + перезапуск для тестирования? Я даже не сохраняю форму, я просто делаю быстрый простой щелчок по этой кнопке QAT compact + repair. Один клик! (Возможно, придется ответить «да», чтобы сохранить). На этом этапе приложение будет перезапущено без необходимости выхода. И вы не удерживаете клавишу Shift - поэтому все ваши настройки запуска запускаются. Теперь вы переключились в режим пользовательского тестирования, и потребовался ОДИН щелчок мыши.

Это позволяет легко переключаться из режима разработчика в режим «пользовательского теста» и всего одним щелчком мыши. Теперь вы можете запустить приложение так, как оно будет отображаться конечному пользователю.

Чтобы вернуться в режим разработчика, просто одним щелчком мыши нажмите кнопку C + R. (И вы УДЕРЖИВАЕТЕ клавишу SHIFT). Это вернет вас обратно в режим разработчика (ваша панель навигации, ваши функциональные клавиши, все и все эти настройки запуска теперь игнорируются - вы можете свободно разрабатывать без всех этих хлопот и проблем на своем пути). Полностью открытое использование Access, как будто никаких настроек вообще не было.

И, как уже было отмечено, вы получаете c + r для загрузки, и вам все равно нужно + сделать это несколько раз в течение дня. И, как уже было отмечено, для большого количества изменений вам не нужно делать этот переворот и вы можете оставаться в режиме разработчика. Конечно, в некоторых случаях ваш «пользовательский режим» ДЕЙСТВИТЕЛЬНО блокирует доступ, и поэтому вы должны выйти (вы теряете трюк QAT). Таким образом, вы часто можете переходить от разработчика к пользователю, но не обратно. Опять же, вам не нужно все время запускать + тестировать все в пользовательском режиме, но часто некоторые глобальные переменные, запуск, пароли вызывают эту проблему на вас.

1114 Итак, в этом случае?

Я использую быстрый щелчок alt-f4 для выхода из приложения. На этом этапе файл accDB ДОЛЖЕН быть выделен в проводнике Windows. Итак, теперь просто быстрое нажатие клавиши ввода, чтобы перезапустить accDB. А если вам нужен «режим пользователя», просто не удерживайте клавишу Shift. Проведите некоторое тестирование, теперь alt-f4, а затем просто быстро нажмите клавишу ввода (мы возвращаемся к исследованию файла Windows, и этот файл accDB выделен). Тем не менее, на этот раз вы будете удерживать клавишу Shift, и теперь вы вернетесь в режим разработчика. И часто я буду вызывать мой код запуска перед тестированием.

Ctrl-g (переход к окну отладки), введите MyStartup

(предполагается, что MyStartup будет вашей первой подпрограммой запуска, которая выполняет все эти настройки, а затем запускает основную форму - поэтому в в некоторых приложениях я не использую встроенную настройку формы запуска, но использую макрос autoexec для вызова моей основной процедуры запуска (MyStartup)

Так что во многих случаях мне не нужно выйдите из Access, чтобы перейти в тестовый режим.

И, конечно, некоторые отчеты и формы можно использовать, просматривать, разрабатывать без необходимости полного запуска приложения со всеми этими «пользовательскими» кодами запуска. [1119 ]

Таким образом, некоторый отчет может работать, но с другой стороны, может потребоваться, чтобы для его работы была открыта какая-то форма (или может потребоваться установка общесистемной функции и названия компании + установка в вашем коде запуска). насколько сильно вам нужно выйти против возможности «некоторой» разработки, здесь часто будет меняться.

Поэтому я скажу, что часто мне приходится выходить + перезагружать приложение (al t-f4, нажмите клавишу ввода). Таким образом, для выхода и повторной загрузки / повторного входа в Access достаточно всего 2 клавиш.

В конце дня, если вы не можете использовать это предложение быстрого доступа к QAT, то вы выйдете + повторно введите МНОГИЕ раз в течение дня. Как уже было отмечено, для большого количества форм и т. Д. Вы можете переключаться между режимом просмотра и дизайна. (Но вы, конечно, запускаете доступ без всего того, что запускает дерьмо, мешающее вам работать разработчиком).

Простая вещь в конце дня, там будут НАМНОГО БОЛЬШЕ настроек, а не просто навигационная панель (или ее отсутствие), которая испортит ваш процесс разработки. Таким образом, вышеприведенный танец клавиш Shift и предложение QAT ТАКЖЕ решает все ДРУГИЕ многие настройки и делает это без необходимости написания одной строки кода для решения этой проблемы.

Конечно, как только все заработает, вы скомпилируете приложение в accDE. А затем примените к нему обходной код клавиши Shift, чтобы заблокировать приложение еще ниже.

0
ответ дан Albert D. Kallal 11 March 2019 в 16:17
поделиться