ЗМІННІ ДІАЛОГУ

Змінні модуля і локальні змінні його програмних компонентів оголошувалися і визначалися, тобто отримували значення, в самому модулі Змінні модуля доступні у всіх його програмних компонентах, локальні тільки в тому компоненті, де вони були оголошені явно або неявно, зявившись в лівій частині оператора присвоювання Крім таких змінних, в модулі можна оперувати і змінними діалогу, які оголошуються в діалозі як ідентифікатори його елементів Область дії змінних діалогу поширюється на всі програмні компоненти модуля, тобто вони мають такий же статус, як і змінні модуля

Зауваження У змінних діалогу є інші назвиреквізити форми

і ідентифікатори елементів діалогу

Розглянемо приклад використання змінних діалогу Наведемо діалог, відображений на рис 114, б, до виду, представленому на рис 120, додавши в нього два елементи текст і числове поле для введення і редагування даних

Рис 120 Діалог з числовим полем

Текст додається після вибору мишею іконки панелі інструментів Елементи діалогу (мал 121) і позиціонування курсора на діалоговому вікні в точці початку розміщення тексту

Рис 121 Панель інструментів Елементи діалогу

Після позиціонування курсора зявиться вікно завдання властивостей тексту, в якому його загальні властивості визначимо відповідно до рис 122

Рис 122 Загальні властивості тексту

Поле введення і редагування даних потрапить в діалог після вибору іконки панелі інструментів Елементи діалогу Загальні властивості поля і його тип задамо відповідно до рис 123

а6

Рис 123 Властивості поля введення і редагування даних: а загальні властивості б тип поля

Після вставки елементів відрегулюємо їх розміри і положення (для цього попередньо елемент виділяється одним ударом миші, а потім знову мишею модифікуються його геометричні характеристики) Для вирівнювання нових елементі по лівій межі попередньо виконаємо їх виділення, а потім використовуємо ико т

панелі інструментів Редактор діалогу (мал 117)

З полем введення і редагування даних ми звязали його ідентифікатор, який як ми вже говорили, інтерпретується в програмних компонентах модуля як змінна

Збережемо обробку і продовжимо її редагування Напишемо в модулі обробки код, який змінює значення змінної ДЧ, додамо код процедури прочинені і простежимо поведінку діалогу після виконання цієї процедури, а потім після неодноразового натискання на кнопку Пуск

перем а / / Змінна модуля

процедура Виконати () / / Повязана з кнопкою Пуск обробки Проба

/ / Вбудоване процедура Попередження виводить текст,

/ / Переданий процедурі як параметр, у вікно з кнопкою ОК Попередження (3наченіе числового поля буде збільшено в 2 рази”)

ДЧ = ДЧ * а / / Результат після завантаження і двох натискань КонецПроцедури / / на кнопку Пуск см на рис 124

процедура відкриття ()

ОчістітьОкноСообщеній () / / Очищаємо вікно повідомлень

а = 20 / / Початкове значення змінної модуля а

ДЧ = 523 / / Початкове значення змінної діалогу ДЧ

КонецПроцедури / / прочинене

а б Рис 124 Поле ДЧ діалогу обробки Проба:

а після відкриття діалогу б після дворазового натискання на кнопку Пуск

Зауваження  Наявна в коді процедура прочинене є зумовленою і виконується, як це випливає з її назви, у момент відкриття діалогу При необхідності процедуру можна викликати і з іншого програмного компонента модуля, наприклад з процедури Виконати Для цього, однак, буде потрібно або додати перед процедурою Виконати оператор попереднього опису

процедура відкриття () далі

або розмістити процедуру прочинене перед процедурою Виконати З діалогом обробки повязані й інші зумовлені процедури, наприклад ПріЗакритіі або ПріВибореЗакладкі

Мінлива діалогу ДЧ стане недоступною в усіх програмних компонентах модуля, якщо в модулі обробки оголосити змінну модуля ДЧ:

перем ДЧ / / Оголошуємо змінну модуля

Якщо ж таке оголошення зробити в якомусь програмному компоненті модуля, наприклад у процедурі Виконати, то змінна діалогу ДЧ стане недоступною в цьому програмному компоненті У таких випадках кажуть: Локальна змінна закриває глобальну змінну. Таким же чином можна закрити в процедурі або функції модуля його будь-яку змінну Будь-яких попереджень про закриття змінних компілятором не видається

Уникнути непередбачених закриттів змінних буде легше, якщо придумувати імена змінним, спираючись на деяку систему, наприклад починати змінні діалогу з букви д або використовувати так звануугорську нотаціюВідповідно до неї імя обєкта забезпечується префіксом з малих літер, що вказують його тип Подальша частина імені розкриває його зміст Причому кожна частина імені, що відображає окремий смисловий компонент, починається з великої літери Наприклад, імя змінної сНазваніеПодразделенія говорить нам не тільки про те, що в ній зберігається, а й про те, що тип змінної є символьним

Джерело: Бартеньев О В 1С: Підприємство: програмування для всіх Базові обєкти та розрахунки на одній дискеті М: Діалог-МІФІ, 2005 464 с

Схожі статті:


Сподобалася стаття? Ви можете залишити відгук або підписатися на RSS , щоб автоматично отримувати інформацію про нові статтях.

Коментарів поки що немає.

Ваш отзыв

Поділ на параграфи відбувається автоматично, адреса електронної пошти ніколи не буде опублікований, допустимий HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

*