![]() Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Добавление кнопки в форму для вызова другой формы
В предыдущем разделе нами была создана сложная форма Flats для отображения информации о квартирах, расположенных в здании. Если вы полностью следовали моим советам и выполнили эту работу на компьютере, то вместо картинки, изображенной на рис. 2.32, после запуска формы на выполнение получили требование ввести какой-то параметр (рис. 2.36). В этом нет ничего удивительного. Запускать на выполнение форму Flats (квартиры) имеет смысл только из формы Building (здание), т. к. два параметра адреса — улицу и номер дома — сформированный нами запрос по квартирам берет именно из этой формы. Добавим кнопку Квартиры в форму Building. 1. Откройте форму Building в режиме конструктора. 2. Убедитесь, что на панели элементов кнопка Щ с подсказкой " Использовать мастера" нажата. Если нет — " выделите" ее щелчком левой кнопки мыши. 3. Сделайте щелчок левой кнопкой мыши по пиктограмме Щ Кнопка на панели элементов. 4. Поместите указатель мыши над тем местом формы Building, где вы планируете разместить левый верхний угол кнопки. Указатель мыши превратится в значок кнопки с крестиком в левом верхнем углу. 5. Нажмите левую кнопку мыши и, удерживая ее в нажатом состоянии, переместите курсор по диагонали так, чтобы получилась рамка требуемого размера. Отпустите левую кнопку мыши. Автоматически запустится построитель кнопки. 6. Появится диалоговое окно, показанное на рис. 2.37. Выберите категорию и действия так, как показано на этом рисунке, и нажмите кнопку Далее. 7. На втором шаге работы мастера кнопок необходимо выбрать форму, которая будет запущена на выполнение после щелчка мышью по кнопке. Это форма Flats (рис. 2.38). 8. Третий шаг — отбор сведений для отображения в форме. Так как запускаемая форма Flats отображает данные, полученные в результате выполнения запроса по одному конкретному зданию, и никакого дополнительного отбора не требует — оставьте появившийся переключатель в исходном положении: Открыть форму и показать все записи. 9. Четвертый шаг — оформление внешнего вида кнопки. На ней можно разместить как надпись, так и рисунок, который находится в файле. При размещении рисунка Access предложит стандартное окно для поиска файла с рисунком.
10. Последний шаг можно пропустить. Сделайте щелчок левой кнопкой мыши по кнопке Готово. Компьютер сам присвоит созданной кнопке имя, под которым она и будет фигурировать как объект VBA в текстах, сгенерированных Microsoft Access или написанных разработчиком. Настало время посмотреть на то, что наколдовал Wizard. Так называется любой построитель (мастер) в оригинальной версии MS Access. Дословный перевод этого слова — колдун, волшебник. Запустите форму Building в режиме конструктора и сделайте двойной щелчок по созданной кнопке Квартиры. Откроется окно свойств этого объекта. Перейдите на вкладку События и выберите Нажатие кнопки. Результаты работы " колдуна" представлены в листинге 2.3. \ Листинг 2.3. Код процедуры нажатия кнопки Private Sub Кнопка190_СИск () On Error GoTo Егг_Кнопка190_СИск Dim stDocName As String Dim stLinkCriteria As String stDocName = " flats" DoCmd.OpenForm stDocName,,, stLinkCriteria Exit_KHonKal90_Click: Exit Sub Егг_Кнопка190_СИск: MsgBox Err.Description Resume Exit_KHonKal90_Click End Sub Код процедуры, которая будет запущена на выполнение после щелчка по кнопке, можно несколько упростить (листинг 2.4). \ Листинг 2.4. Код процедуры нажатия кнопки после доработки Private Sub Кнопка190_СИск () DoCmd.OpenForm " flats" End Sub Единственное отличие в работе этих процедур заключается в том, что в случае возникновения ошибки при работе формы Flats об этом в первой процедуре сообщит Microsoft Access 2007, а во второй — Visual Basic for Applica- tions 6.5. В обоих случаях будет выведен один и тот же текст, причем VBA укажет еще и номер ошибки. Итак, кнопка для вызова формы Flats из формы Building создана. Основная часть нашего программного комплекса готова к работе. Давайте в очередной раз подумаем о конечном пользователе. Попробуйте полностью от начала до конца заполнить карточку здания. Уверен, вы будете не очень довольны тем, что после заполнения очередного поля и нажатия клавиши < Enter> курсор перепрыгивает вовсе не на следующее поле, а совсем в другой угол формы, и вам приходится прибегать к помощи мыши, чтобы вернуть его в нужное место. Исправим сложившееся положение. Запустите форму Buildin g в режиме конструктора. Сделайте щелчок левой кнопкой мыши по значку р Переходы вкладки Упорядочить. Появится диалоговое окно Последовательность перехода, в котором отображен список всех объектов, имеющихся в форме. Причем отображены они в той последовательности, в какой попали в форму (см. рис. 2.28). Последней находится кнопка с именем Кнопка190. У нас есть возможность " перетащить" любой объект в любое место окна. Выделите его щелчком левой кнопки мыши и творите! Вполне очевидно, что наилучший порядок перехода фокуса между элементами формы — естественный. Если все элементы формы расположены один под другим, то нажмите кнопку Авто, и статус-кво будет восстановлен. После внесения изменений не закрывайте окно щелчком левой кнопкой мыши по крестику, расположенному в правом верхнем углу окна, т. к. в этом случае вся ваша работа пойдет насмарку. Для сохранения сделанных изменений обязательно нажмите кнопку OK.
|