Опубликован: 17.09.2009 | Доступ: свободный | Студентов: 1416 / 98 | Оценка: 3.94 / 3.53 | Длительность: 10:18:00
ISBN: 978-5-9963-0238-3
Лекция 9:

Элементы Forms Builder. Обзор элементов и их общих свойств. Элементы ввода

< Лекция 8 || Лекция 9: 12 || Лекция 10 >
Аннотация: В этой лекции слушатель научится создавать текстовые элементы, радиокнопки, редакторы (Editors), кнопки-флажки (Check Boxes), группы кнопок-переключателей (Radio Groups).

Цель лекции: ознакомить слушателя с палитрой элементов Forms Builder и научить создавать кнопки-флажки и радиогруппы.

Элементы блоков (Items)

В этой главе речь пойдет об элементах интерфейса Oracle Forms. В процессе изучения материала вы ознакомитесь с атрибутами элементов, научитесь их устанавливать и модифицировать как на этапе проектирования, так и во время выполнения приложения, используя различные методы. Мы также рассмотрим на конкретных примерах, как, используя определенные методы элемента, можно управлять ими в зависимости от требования пользователей.

Элементы – это объекты интерфейса Oracle Forms, предназначенные для взаимодействия пользователя с программой и управления входной и выходной информацией и ее отображением. В табл. 9.1 приведены и описаны элементы Oracle Forms.

Таблица 9.1. Элементы Oracle Forms 6i
Элемент Обозначение
Button (кнопка) Прямоугольник с текстовой меткой или графической иконкой внутри.
Chart item (элемент диаграммы) Прямоугольник с окантовкой любого размера, выводящий диаграмму или иное изображение, генерируемое Oracle Graphics. Операторы не могут перемещаться к элементам диаграмм или манипулировать ими.
Check box (переключатель) Текстовая метка с графическим индикатором состояния, которая показывает текущее значение или как отмеченное, или как не отмеченное. Выбор переключателя переключает его в противоположное состояние.

Дает пользователю возможность задавать логические значения.

Display item (неизменяемый текст) "Только читаемая" текстовая рамка, значение которой должно быть извлечено или присвоено программно. Операторы не могут перемещаться к элементу неизменяемого текста или редактировать содержащийся в нем текст.
Image item (элемент изображение) Показывает растровое или векторное изображение из файловой системы или Базы Данных.
List item (элемент список) Список вариантов, выводимый или как всплывающий список (иногда называемый ниспадающим списком), или как t-список (иногда называемый списочной рамкой), или как combo-рамка.
Radio group (радиогруппа) Группа радиокнопок, одна из которых всегда выбрана.
Text item (элемент текст) Одно- или многострочная текстовая рамка, поддерживающая множество типов данных, масок формата, а также возможности редактирования.
OLE container (OLE-контейнер) Область, которая хранит и выводит объект OLE, создающийся прикладной программой OLE-сервера.
ActiveX Control (элемент управления ActiveX) Пользовательское средство управления, которое упрощает построение и усовершенствование пользовательских интерфейсов.
Bean Area
Hierarchical Tree (Иерархическое дерево) Элемент – иерархическое дерево. Элементы дерева можно создавать динамически. Они могут быть любой вложенности родитель-потомок.
Tab Canvas (Страница вкладки) Основные функции окна отображаются в группе перекрывающихся объектов-основ с помеченными вкладками.
Stacked Canvas (Стековая вид-картинка) Канва отображается поверх других объектов-основ, показывая содержимое в зависимости от заданного условия или разделителя.

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

  • Базовый элемент – это элемент, который связан со столбцом Базы Данных. Базовые элементы могут размещаться как в управляющих, так и в базовых блоках.
  • Небазовый элемент (управляющий) – это элемент, не связанный со столбцом Базы Данных. Управляющий элемент может быть использован как переменная или управляющий элемент. Ниже приведена область применения управляющих элементов.
    • Вычисляемые элементы – отображение формул и групповых обработок.
    • Хранение временной информации – использование элемента вместо переменной в PL/SQL-программах.
    • Заполнение данными из других таблиц.

Редактируемый текст (Text_Item)

Редактируемый текст (Text_Item) – это элемент интерфейса, предназначенный для ввода, корректировки и отображения информации в однострочном или многострочном режиме. Текстовый элемент может быть базовым (ассоциирован со столбцом Базы Данных) и управляющим.

Создание текстового элемента

Создание текстового элемента Для того чтобы создать элемент "Редактируемый текст", находясь в Редакторе Разметки, найдите на панели инструментов элемент "Редактируемый текст" и начертите его на канве.

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

Для того чтобы выбрать тип данных для текстового элемента, выполните следующие действия:

  1. Находясь в Палитре Свойств выбранного элемента, найдите свойство "Тип Данных".
  2. Находясь в значении свойства "Тип данных", вызовите выпадающий список с перечнем доступных типов данных. Выберите тот тип данных, который соответствует вашим требованиям.

Примечание: текстовый элемент при создании имеет по умолчанию тип данных CHAR с размером (Maximum Length) 30 символов.

Рассмотрим основные свойства, которые могут понадобиться при первом знакомстве с элементом "Редактируемый текст".

Таблица 9.2. Типы данных
Тип данных Значение
CHAR Символ
NUMBER Число
DATE Дата
LONG Длинное целое
ALPHA Символьный
DATETIME Дата, включая время
EDATE Дата
JDATE Julian Date – Юлианская Дата
INT Целый
MONEY Денежный
RINT Right Integer – Целые по Правому
RMONEY Right Money – Денежный по Правому
RNUMBER Right Number – Числовой по Правому
TIME Время
Функциональные
  • Выравнивание – значение этого свойства определяет положение (выравнивание) текста в элементе. Доступно пять значений:
    • влево;
    • вправо;
    • по центру;
    • в начало;
    • в конец.
  • Многострочный – значение этого свойства определяет, как будет отображаться текст в редактируемой области – как однострочный или многострочный:
    • Однострочный элемент – это элемент текста, в котором данные вводятся в одну строчку и отображаются соответственно так же. Когда свойство "Многострочный текст" установлено в "Нет", это значит, что элемент текста будет выводить одну строку текста.
    • Многострочный элемент позволяет вывести на экран несколько строк текста. В таком элементе при возврате каретки курсор перемещается в начало новой строки. Вывод строк на экран зависит от настройки ширины, длины и шрифтов.
  • Стиль завершения строки определяет поведение текста в случае превышения строкой текста ширины элемента. Например, если выбран стиль "Слово", то при превышении строкой ширины столбца ее значение будет переноситься на следующую строку на обрыве слов. Существует три стиля переноса:
    • слово;
    • символ;
    • ничего.
  • Ограничение на регистр определяет регистр символов отображаемых элементов:
    • Смешанный – отображает символы верхнего и нижнего регистра, то есть текст будет отображен так, как его ввели.
    • Прописной – при выводе текста переводит его в нижний регистр.
    • Строчный – при выводе текста переводит его в верхний регистр.
  • Спрятать данные – это свойство служит для скрытия символов, вводимых в элемент.
  • Сохранить позицию курсора – сохраняет текущую позицию для повторного входа в элемент.
  • Автоматический пропуск – если значение этого элемента истинно, это значит, что при заполнении последнего символа курсор переместится на следующий элемент. Увеличивает скорость работы с приложением, так как нет необходимости в дополнительном нажатии функциональных клавиш.
Данные
  • Фиксированная длина – максимальное количество символов, которое может быть введено в элемент. Если свойство "Автоматический пропуск" истинно, то после того как случится попытка набрать символ, превышающий максимальную длину, курсор переместится в следующий элемент.
  • Начальное значение – значение по умолчанию, которое будет присваиваться каждый раз при создании новой записи.
  • Обязательный – требует обязательного ввода данных; если свойство истинно, то курсор не покинет элемент, пока не будет введено значение.
  • Наименьшее Допустимое Значение – минимальное значение, которое может быть введено. Если, предположим, значение равно пяти, то пять также является разрешенным значением.
  • Наибольшее Допустимое Значение – максимальное значение, которое может быть введено. Если, предположим, значение равно десяти, то десять также является разрешенным значением.

Список значений (LOV)

  • Список Значений – имя списка значений (LOV), привязанного к элементу. Если в этом свойстве задать список значений, то этот список будет выводиться командой LIST_VALUES.
  • Проверять по Списку – если значение свойства истинно, то вводимое значение будет сравниваться со значениями в ассоциированном списке.

Использование элемента

Вы можете использовать элемент "Редактируемый текст" как базовый или управляющий.

Ниже перечислены основные свойства для работы с элементом "Редактируемый текст" как с элементом Базы Данных.

  • Имя столбца – имя столбца, с которым ассоциирован элемент.
  • Первичный ключ – определяет, соответствует ли элемент столбцу первичного ключа, определенного в Базе Данных.
  • Только запрос – если значение свойства истинно, то элемент нельзя задействовать в командах DML.
  • Запрос Разрешен – значение этого элемента разрешает или запрещает выполнения запроса.
  • Длина Запроса – определяет максимальное количество символов, разрешенное для ввода критерия запроса в элементе.
  • Запрос без Учета Регистра – значение этого элемента разрешает или запрещает выполнение запроса без учета регистра.
  • Вставка Разрешена – значение этого элемента разрешает или запрещает изменять данные в элементе, то есть выполнять команду INSERT.
  • Обновление Разрешено – значение этого элемента разрешает или запрещает вставку в элементе, то есть выполнять команду UPDATE.
  • Обновить только если отсутствует – если значение элемента истинно, то изменять данные в элементе можно только в том случае, если оно не определено, то есть NULL.
  • Блокировать запись – если значение этого свойства истинно, Forms заблокирует запись БД, соответствующую текущей записи в блоке.

Управляющий (небазовый) элемент – это элемент, который не ассоциирован со столбцом Базы Данных. Вы можете использовать небазовые элементы как разновидность параметров или переменных, действующих в области всей формы. Чаще всего такие элементы применяют как вычисляемые поля.

Форматирование элемента

Вы можете управлять отображением содержимого элемента, не изменяя при этом самого значения, с помощью форматных масок. Маски данных также служат для упрощения ввода оператором данных, так как автоматически проставляют различные специальные символы, такие как тире и денежные символы. Форматные маски разделяются по типам данных:

  • форматы масок для значений NUMBER;
  • форматы масок для значений DATE;
  • форматы масок для значений DATETIME;
  • форматы масок для значений TIME.

Ниже будут приведены три таблицы с примерами форматных масок для конкретного типа данных.

Форматы масок для значений NUMBER

К примеру, нам необходимо вести справочник телефонных номеров, в котором номера телефонов имеют тип NUMBER, скажем, номер 80629528361. Перед нами стоит задача создать форму просмотра телефонного справочника, причем номер для лучшего восприятия должен отображаться как 8(0629) 52-83-61, то есть символы в нем должны отделяться тире и скобками. Рассмотрим пример.

  1. Создайте в форме элемент "Редактируемый текст".
  2. Откройте Палитру Свойств и установите следующие свойства:
    • Тип данных: NUMBER;
    • Маска: 9"("9999") "99"-"99"-"99.
  3. Запустите форму и введите в элемент набор символов 80629528361.

После подтверждения ввода или перехода в другой элемент вы увидите, что элемент отображает введенное вами значение в соответствии с заданной маской. Маска довольно проста для понимания, достаточно знать таблицу специальных символов (табл. 9.3). Например, в нашем случае для вставки символов "тире" и "скобка" достаточно заключить эти символы в двойные кавычки. Этот пример очень хорошо показывает, как маска может упростить работу оператора, позволяя не тратить время на набор специальных символов, и разработчика, которому не придется менять тип данных столбца.

Таблица 9.3. Специальные символы маски формата для типа NUMBER
Символ Описание
9 Представляет один цифровой символ. Количество девяток определяет то, сколько цифр сможет выводить элемент текста.
0 Выводит ведущие нули, если они имеются.
$ Предваряет число символом доллара.
B Выводит предшествующие нули как пробелы.
MI Выводит "–" после отрицательного значения.
PR Выводит отрицательное значение в <угловых скобках>.
, (запятая) Выводит в этой позиции запятую, если требуется.
. (точка, десятичный разделитель) Выводит в этой позиции десятичную точку.
Таблица 9.4. Примеры использования специальных символов
Маска формата Значение Результат
99 125 12
9"("9999") "99"-"99"-"99 80629528361 8(0629)52-83-61
$9,999.99 1256.78 $1,256.78
99.9 0041.8 41.8
0.9 0.45 0.5
B99.9 0023.13 23.1
99.9MI -12 12.0-
99.99"т. " 12.12 12.12т.

Форматы масок для значений DATE, DATETIME и DATE

В этом разделе, как и в предыдущем, будут приведены основные символы, использующиеся при определении маски формата.

Таблица 9.5. Специальные символы маски формата типа DATE
Маска формата Значение
9 Представляет один цифровой символ. Число девяток определяет количество цифр, которое сможет выводить элемент текста.
MM Месяц (01-12).
MON Имя месяца в 3-буквенном сокращении.
MONTH Имя месяца с дополненными пробелами до длины 9 символов.
DD Число месяца (1-31).
DY Имя дня в 3-буквенном сокращении.
DAY Имя дня в 3-буквенном сокращении.
Y, YY, YYY, YYYY 4-, 3-, 2- или 1-цифровой год.
HH (HH12) Час дня (1-12).
HH24 HH24 Час дня (0-23).
MI Минуты (0-59).
SS Секунды (0-59).
AM (A.M) или PM(P.M) Индикатор полудня.
TH Порядковое число (например, "DDHH" для "15ТН").
SP Названное число (например, "DDSP" для "FIFTEEN").
SPTH (THSP) Названное порядковое число (например, "DDSPTH" для "FIFTEENТН").
FM Префикс, используемый с символами, такими как MONTH и DAY, для подавления заполнения, добавляемого этими символами. Подавляет также ведущие нули для числовых символов, таких как НН и ММ. FM - это переключатель. Если FM в модели формата даты присутствует дважды, то после первого FM заполнение пробелами и ведущие нули для элементов подавляются, а после второго - включаются снова.
Таблица 9.6. Примеры использования специальных символов
Маска формата Значение Результат
MM:DD:YYYY DATE 01:01:2007
Day, "the" DDTH "of" fmMonth DATE Monday, the 10TH of April
J DATE 10012007
HH:MI PM TIME 11:15 PM
HH24:MI TIME 23:27
MM-DD-YY HH:MI AM DATETIME 01-01-99 05:15 AM
FmMM-DD-YY fmHH:MI AM DATETIME 1-01-99 05:15 AM
fmMonth YY DATETIME April 99

Мы рассмотрели основные маски, применимые в Oracle Forms. Не забывайте об их существовании и используйте в приложениях, это упростит работу не только вам, но и оператору.

Вы можете управлять элементами текста во время выполнения, используя все тот же набор подпрограмм:

  • GET_RADIO_BUTTON_PROPERTY;
  • SET_RADIO_BUTTON_PROPERTY;
  • CONVERT_OTHER_VALUE;
  • DISPLAY_ITEM.
< Лекция 8 || Лекция 9: 12 || Лекция 10 >