Усовершенствования
До создания классного журнала немного усовершенствуем то, что мы уже сделали. Вы помните вопрос о недочетах? Наверное, некоторые вы уже выявили для себя. Выделим два из них:
- При открытии формы они располагаются на экране бесконтрольно, причем одна может перекрывать другую. Это неудобно.
- Неудобно вводить дату оценки. Лучше бы сделать специальную форму для изменения даты.
Исправим первый недочет. Есть такой макрос – СдвигРазмер – он изменяет размер активной формы и ее координаты на экране. Координаты отсчитываются относительно верхнего левого окна Access до верхнего левого угла формы. Единицы измерения – сантиметры. Правда, эти сантиметры не всегда соответствуют реальным сантиметрам, и приходится несколько раз подбирать данные.
- Создадим макрос, настраивающий положение формы Классный Журнал. Договоримся, что при запуске она должна появляться посередине экрана вверху.
- Перейдите на Макросы, нажмите Создать.
- Выберите в первой строке макрос СдвигРазмер и внизу в аргументах введите По правому краю – 8см («см» не пишите, программа подставит автоматически), От верхнего края – 1см. Сохраните макрос под именем НастройкаЖурналаУчителя
- Аналогично создайте новый макрос с командой СдвигРазмер, в котором поставьте По правому краю – 1см, От верхнего края – 9см. и назовите макрос НастройкаОценокУчителя. Этот макрос будет настраивать местоположение журнала оценок.
- Когда эти макросы должны срабатывать? Тогда, когда нужная форма открывается. Свяжем эти макросы с соответствующими событиями форм.
- Войдите в режиме конструктора в форму Журнал учителя, перейдите на Макет – События и в строке Открытие выберите макрос НастройкаЖурналаУчителя. Закройте Макет и конструктор.
- Откройте в конструкторе форму Журнал учителя – оценки и аналогично свяжите с событием открытия макрос НастройкаОценокУчителя. Проверьте теперь, как и где открываются окна.
Первый недочет исправили. И научились управлять положением окон на экране. Теперь – исправление второго недочета. Создадим с нуля форму для выбора даты.
- В режиме КОНСТРУКТОРА (не мастера! – мы впервые создаем форму в режиме конструктора!) создайте форму.
- Дважды щелкните в левом верхнем углу, перейдите в Макет и в поле Рисунок нажмите на кнопку справа и из папки (которая у вас может открыться автоматически) C: \Program Files\Microsoft Office\OFFICE11\BITMAPS\STYLES выберите понравившийся вам рисунок, например ACEXPDTN.GIF. В поле Мозаичное заполнение поставьте Да. Это заставит рисунок, который меньше формы по своим размерам, мозаикой заполнить форму. Закройте Макет.
- Поставьте в левом верхнем углу поле со списком, выберите фиксированный набор значений и введите в один столбец числа от 1 до 31 – это дни месяца. Назовите список День.
- Аналогично добавьте ниже поле со списком Месяц (числа от 01 до 12) и Год (числа от 2006 до 2009).
- Зайдите в Макет и уберите полосы прокрутки, область выделения и кнопки перехода. Закройте конструктор, сохраните форму под именем Дата. Запустите форму и проверьте работу списков дней, месяцев и лет.
- Добавим поле, в котором будет синтезироваться выбранная дата. Именно из этого поля эта дата будет копироваться в журнал Оценок.
- Откройте в конструкторе форму Дата и правее списков поставьте поле (не поле со списком!) и назовите его Дата. Увеличьте (для удобства) его размеры и шрифт как поля, так и подписи к нему. Правой кнопкой щелкните на поле (а не на его надписи!) и выберите Свойства – Другие и в поле Имя введите Дата. Закройте макет.
- Также, заходя в свойства, измените имена для списков, назвав их соответственно День, Месяц и Год.
- Снова перейдите в свойства поля Дата, перейдите на Данные и справа от строчки Данные нажмите кнопку. В построителе выражений постройте выражение или введите строчку: [День] & "." & [Месяц] & "." & [Год]. Закройте построитель. Как вы заметили, эта формула объединяет текстовые данные дня, месяца и года через символ точки, что соответствует формату даты. Однако, чтобы эта строчка расценивалась как дата, необходимо задать маску ввода. Нажмите на кнопке справа от поля Маска ввода и выберите маску Краткий формат даты. Поставьте блокировку на поле Дата. Закройте макет.
- Войдите в свойства списка День – Данные поставьте значение по умолчанию – 1, ограничиться списком - Да, в списке Месяц – 01 и ограничение списком, а в списке Год – 2007 и ограничение списком.
- Закройте конструктор и откройте форму Дата. Проверьте, как работает выбор даты.
- Создайте макрос, который устанавливает поле Дата в координаты 16см от правого края и 9 см от верха. Назовите его НастройкаДаты. Свяжите этот макрос с событием открытия формы Дата.
- Откройте форму Дата, откройте форму Журнал учителя и в ней нажмите кнопку Открыть журнал. Все три формы не должны перекрывать друг друга (см. рис.). Если это не так, разберитесь, какую форму нужно передвинуть и измените данные соответствующего макроса и вновь проверьте.
- Автоматизация открытия. Сначала снимем режим модальности с формы Журнал учителя – оценки. Как вы помните, она открывается кнопкой Открыть журнал. А кнопка связана с макросом ОткрытьЖурналУчителя. Откройте этот макрос в режиме конструктора и смените Режим окна с Окно диалога на Обычное. Теперь в этом же макросе во второй строке поставим ту же команду, что и стояла в первой – ОткрытьФорму. В аргументах команды в поле Имя формы поставьте Дата. Закройте макрос.
- Откройте форму Журнал Учителя. Выберите предмет, класс и параллель и нажмите кнопку Открыть журнал. У вас должны открыться сразу две формы – Журнал учителя - оценки и Дата. Если теперь форма журнала «ушла» вниз, подкорректируйте макрос, который настраивает ее местоположение НастройкаОценокУчителя.
- Теперь создадим макрос, который должен копировать дату, введенную в Форме Дата и содержащуюся в его поле Дата в ячейку Дата активной строки таблицы оценок формы Журнал Учителя – оценки.
- Создайте новый макрос и в первой строчке выберите команду ЗадатьЗначение. Внизу, в аргументах, в поле Элемент введите при помощи построителя поле Дата формы Журнал учителя – оценки: Forms! [Журнал учителя - оценки]! [Дата]. В поле Выражение, введите, откуда для указанного элемента будет браться выражение – поле Дата формы Дата: Forms! [Дата]! [Дата ].
- Сохраните макрос как ПодстановкаДаты.
- Откройте форму Дата в режиме конструктора и под полем Дата поставьте кнопку. В настройках кнопки выберите Разное – Выполнить макрос – ПодстановкаДаты – текст – «Подставить Дату».
- Настройте размер кнопки и шрифт надписи кнопки. Закройте конструктор.
- Откройте форму Журнал учителя.
- Выберите предмет, класс, параллель и нажмите кнопку Показать журнал. Если все правильно, должны открыться две формы – Журнал учителя - оценки и Дата.
- Измените какие0ниюудь записи в журнале или создайте новые. Дату вводите при помощи формы Дата. При нажатии на кнопку Подставить дату дата должна заноситься в выбранную строчку журнала в раздел Дата.
- И последний недочет уберем – сделаем так, чтобы при изменении предмета, класса или параллели форма с оценками автоматически закрывалась. Создайте новый макрос, в первой строке выберите команду Закрыть, в Аргументах – Тип – Форма, Имя - Журнал учителя – оценки, Сохранение – Да. Сохраните макрос под именем ЗакрытьОценки.
- Сопоставьте этот макрос с событиями «Кнопка вниз» кнопок перехода по записям формы Журнал Учителя, а так же событиям Изменения спискам СписокКлассов и СписокПараллелей.
Картограммы и картодиаграммы Картограммы и картодиаграммы применяются для изображения географической характеристики изучаемых явлений...
|
Практические расчеты на срез и смятие При изучении темы обратите внимание на основные расчетные предпосылки и условности расчета...
|
Функция спроса населения на данный товар Функция спроса населения на данный товар: Qd=7-Р. Функция предложения: Qs= -5+2Р,где...
|
Аальтернативная стоимость. Кривая производственных возможностей В экономике Буридании есть 100 ед. труда с производительностью 4 м ткани или 2 кг мяса...
|
|
Принципы резекции желудка по типу Бильрот 1, Бильрот 2; операция Гофмейстера-Финстерера. Гастрэктомия Резекция желудка – удаление части желудка:
а) дистальная – удаляют 2/3 желудка б) проксимальная – удаляют 95% желудка. Показания...
Ваготомия. Дренирующие операции Ваготомия – денервация зон желудка, секретирующих соляную кислоту, путем пересечения блуждающих нервов или их ветвей...
Билиодигестивные анастомозы Показания для наложения билиодигестивных анастомозов:
1. нарушения проходимости терминального отдела холедоха при доброкачественной патологии (стенозы и стриктуры холедоха)
2. опухоли большого дуоденального сосочка...
|
|
Тема: Кинематика поступательного и вращательного движения. 1. Твердое тело начинает вращаться вокруг оси Z с угловой скоростью, проекция которой изменяется со временем
1. Твердое тело начинает вращаться вокруг оси Z с угловой скоростью...
Условия приобретения статуса индивидуального предпринимателя. В соответствии с п. 1 ст. 23 ГК РФ гражданин вправе заниматься предпринимательской деятельностью без образования юридического лица с момента государственной регистрации в качестве индивидуального предпринимателя. Каковы же условия такой регистрации и...
Седалищно-прямокишечная ямка Седалищно-прямокишечная (анальная) ямка, fossa ischiorectalis (ischioanalis) – это парное углубление в области промежности, находящееся по бокам от конечного отдела прямой кишки и седалищных бугров, заполненное жировой клетчаткой, сосудами, нервами и...
|
|