неозаглавен документ

Модули като обекти за достъп

Това е пример на универсална функция, която проверява дали формата е заредена, името на която се предава като аргумент. Това няма нищо общо с не само обект, но и с това приложение и може да се използва както в себе си и във всички останали приложения.







Вторият тип модул в Access е модул на клас. клас модул се различава от стандартния модул, така че в допълнение към процедурата, тя съдържа описание на обекта и се използва за създаване на обекти. Процедурите, определени в този модул са методи и свойства на обекта. Примери за клас модули са модули форми и отчети.

Модули форми и отчети, свързани с конкретната форма или отчет и съдържа процедури събития за формата или отчета. форма модул не е създаден веднага, когато създавате нова форма. Тя е създадена и свързани с формата, в момента, в който се опитаме да създадем процедурата на първо събитие за формата или една от контролите формата или натиснете програмата (Code) в прозореца Form Designer.

Към от VBA код за отваряне на формата и променят някои свойства на форма или форма контроли, могат да се използват два метода:

1. макро OpenForm, като метод на обекта DoCmd, например:

Форми! Tovary.RecordSource = "Клиент на продукта"

2. Позоваването на съответния клас модул, например:

Form_Tovary.RecordSource = "Клиент на продукта"

И в двата случая, при извършване на стандартен отворен екземпляр на формуляра, "Стоки" (Продукти) и се заменя с източника на рекорд за формата.

VBA ви позволява да отваряте няколко екземпляра на класа форма. Това може да се наложи, като например, когато те искат да покажат на организацията-майка и дъщерните дружества в различни прозорци. Информация за единия или другия може да се съхранява в различни записи в една таблица, а вие трябва да отворите два екземпляра на един вид с различни записи във всеки случай.

Форма клас може да има само едно копие на стандарта, така че в този случай трябва да се създаде потребителски инстанция на формата. За тази цел на програмата е необходимо да се опише типа на променливата, която е името на класа на формата на модула, а в променливата декларация за включване на нова ключова дума. Така например, следната команда създава нова инстанция на формата "Клиенти" (клиенти) и го свързва с променлива от тип Форма:

Дим FRM Както Form_Klienty

Сега промените източника на данни за тази форма, местоположението на екрана просто друга форма на припокриване) и възлага на имота, за да се покаже (Видима), за да Да (Yes).

FRM. RecordSource = "Нашата организация"

DoCmd.MoveSize 1440, 2400

FRM. Видим = True

За да промените позицията на екрана с помощта на макро SdvigRazmer (MoveSize), при което в този случай координатите на горния ляв ъгъл на формата с главния прозорец отношение на достъпа.

За да се формира на втора инстанция не изчезва от екрана веднага след тяхното възникване, променливата FRM трябва да бъде обявена на ниво модул, тоест. Д. е обявен в секцията Декларация (описание) модул с помощта на ключовата дума.

Стойността на имотите и да е форма за контрол, които задаваме по този начин ще се прилага само за текущата инстанция на формата и няма да бъдат запазени след това се затваря. Това е в контраст с модула за клас от стандартен модул: те имат съхраняват различни данни. Стандартната модул може да обяви публично променлива, и то се инсталира, ще проведе своята стойност, докато има очевидно няма да се промени другия отбор във всеки друг модул. В класа на данни модул принадлежат към същата клас модел, т.е.. E. един обект. Те се появяват, когато се създава обекта, и изчезват, когато обектът изчезне. Това означава, че променливите с обществеността в модул клас ще бъдат достъпни само докато има променлива, която съдържа препратка към отделна инстанция на класа. Това важи също и за процедурите, обявени за обществено.

Форми и доклади са стандартни класове от обекти в Access, но можете да използвате класа модули за създаването на специални обекти, наименование, с което запазен клас модул става името на специален предмет. Под-вид и функция, както е определено в процедурата за клас модул, обектът ще бъде методите и процедурите Тип на имота Да, може да получи вещите и имуществените Set - свойства на обекта. За описание на метода не връща стойност, се използва един Под процедура, както и за метод, който връща стойност - процедура Function. процедура Get имота връща стойността на обекта. процедура на имота Set присвоява стойност за собственост на обекта. Property Let процедура определя стойността на имота не са собственост на обекта.







По-подробна информация за тези процедури могат да бъдат получени от Access Help, като въведете дума за търсене, както е името на процедурата: Имоти Позволявам, Get вещите и имуществените Set, съответно.

Дим CLS като нови MyClass

След този призив към своите методи и свойства чрез използване на тази променлива. Например, ако модулът определена процедура: MyProcedure, след това, за да изпълняват тази процедура, изразът

За да създадете стандартен модул или модул на клас. трябва да:

2. Създаване на необходимите процедури и описания.

3. Запазване на модула, като натиснете бутона Save (Запиши) в лентата с инструменти. В същото време, издаден диалогов прозорец за пестене (Save), в който е необходимо да се въведе ново име модул и натиснете OK.

След това, на новия модул се появява в прозореца на базата данни, списъкът на модули. За да получите достъп до него, можете да кликнете Designer (дизайн) прозорец база данни или, ако сте във форма дизайнер Mode или доклад, кликнете програмата (Code) в лентата с инструменти.

Връзки към възразят модул

- imyaSemeystva! на обект, например, Модули! Startup

- imyaSemeystva ( "на обект"), например модул ( "стартиране")

- imyaSemeystva (индекс), където индекс - индексът на обекта в семейството

За рефериране на формуляр или отчет модул, можете да използвате името на модула, например, Модули! Form_Klienty, или собственост на формата, например,

Модул Object (модул) има тип имот (Тур). Стойността на това свойство определя типа на модул: модул за стандартна стойност е 0, модул клас - 1.

  • Достъп Модули клас - включва модули форми и отчети.
  • Модули - стандартни модули.
  • Модули класове - специален клас модули, ако те присъстват в заявлението.

В допълнение, той може да включва препратки към обекти на външни библиотеки и модули списък на тези библиотеки.

Кодът във всеки модул е ​​разделен на секции, превключване между тях се осъществява чрез избор на стойности от номенклатурата на обекта, който се намира в горния ляв ъгъл на прозореца. Модул форма този списък включва секция (General), сечението на самата форма, както и части за всяка контрола във формуляра.

За тази част от модула за доклад (General), секция за доклад обект (доклад) и раздели от доклада за всяка област. не е определено събития, така че няма съответните раздели в код модул за полета в доклада.

За списъка с обикновените модул включва само частта (General).

За модул клас, има секции (общо) и (клас).

Всеки дял може да съдържа няколко процедури, които могат да се избират от списъка на дейността.

Списък на процедури за модул форма съдържа отделен раздел за всяко събитие на формата и всички негови контроли. За списък на процедурите клас модул съдържа само две процедури за инициализиране и прекратява клас събитие.

За списък на стандартни процедури модул се състои от секцията декларации, който съдържа описание на променливите на константите на модул ниво, външни процедури, и секциите за всяка процедура (подпрограма или функция) в модула.

Използвайте един от видовете представяния на код, можете да изберете в долния ляв ъгъл на прозореца на прозореца:

  1. Процедури (Процедура View), когато прозорецът показва само един избран процедура.
  2. Представяне на пълен модул (Full Модул View), когато прозорецът се характеризира с няколко процедури, които са разделени една от друга с тънка линия.

Тя съдържа четири раздела.

Редактор Първият раздел съдържа две групи от параметри: Код за настройка и настройка на прозореца.

Обща третия раздел се състои от няколко групи от ключове и знамена.

- Пробив на всички грешки - Всички грешки, независимо от това дали тя се обработва от програмата, ще доведе до прекратяване на програмата.

- Пробив в клас Модул - Всяка необработено грешка в модула за клас ще доведе до прекратяване на програмата.

- Пробив на необработено грешки - Прекъсване на програма призив всички необработени грешки.

  • знамената Последната група определя кога проектът е компилиран модула:

    - Съставете по заявка - определя дали всички модули, съставени проект преди започване на работа, или само по поръчка. В първия случай, приложението ще работи по-дълго.

    - Предистория Compile - определя дали съставянето на модули работи във фонов режим.

    Докинг последния раздел съдържа отметки в полета, които ви позволяват да се определи позицията на главния прозорец на екрана.

    1. Натиснете - най-бързо.

    2. Натиснете бутона в лентата с инструменти Object Browser - приятелски.

    3. Изберете команда View, Object Browser - ако други начини да се забравят.

    Object Browser прозорец се състои от няколко списъци, които осигуряват представяне на информацията, на три нива.

    Проект / Library списък в горния ляв ъгъл на прозореца съдържа списък на всички библиотеки и проекти, които са упоменати в проекта. Най-малко тя включва библиотека с достъп, VBA библиотека, библиотеката на настоящия проект.

    При избора от списъка на една от библиотеките в долния ляв полеви Classes показва списък на следващото ниво - списък на всички обекти, включени в тази библиотека. Например, ако изберете библиотека достъп, в списъка на уроци, ще видите много познати предмети. Изборът един от тях, например DoCmd, в полето Невярно номера на можете да видите всички от методите на този обект. Ако изберете Form обект в списъка с десен да се покажат всички свойствата и методите на Формуляра за обект.

    В долната част на прозореца, който се нарича зона описание, показва описание на избрания елемент.

    Ако изберете в проекта / област библиотека, текущото приложение "Northwind", в полеви класове показва всички модули форми, отчети и стандартни модули за кандидатстване.

    Ако сте написали много процедури, това е удобен начин да се намери правилният процедура. Освен това, ако се включите в списък модулни компоненти се интересувате от процедурата, щракнете върху Преглед на бутон Definition, тя се отваря прозорец на този модул и ще видите, че е тази процедура в него.

    има поле Търсене Текст а (втори комбобокс в горната част на прозореца), за да намерите желания обект. Възможно е да въведете текст за търсене и щракнете върху бутона с бинокъла, който е в съседство. След това се отваря допълнителни резултати поле от търсенето, което показва и списък на компонентите, които отговарят на условието за търсене.

    Отбелязването списъка желания низ, можете отново да използвате бутона View дефиниция, за да отворите желаната процедура.

    Debugging Tools

    команди Цел менюто Debug, описани в таблицата по-___

    команди от менюто Debug