Анимация
JavaScript


Главная  Библионтека 

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 [ 40 ] 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146

Объект Image создает элемент управления в виде изображения формата BMP. Может использоваться для создания областей на форме, реагирующих на действия пользователя.

В Visual Basic кроме объекта Image есть и объект PictureBox, который обладает расширенной функциональностью, например, может выводить дополнительно изображения в формате ICO и WMF, но работает медленнее.

Источник изображения для этого объекта устанавливается с помощью свойства

Control.Picture = cFileName

В Visual FoxPro источник изображения может храниться и в поле типа General. В подобном случае имя этого поля указывается вместо имени файла.

Объект Label создает метку для вывода поясняющего текста. Для придания метке нужного вида можно использовать следующие полезные свойства.

Control.Alignment [ = nValue]

Если параметр nValue будет равен 0 (по умолчанию), то текст в метке выравнивается по левому краю, если 1 - по правому, если 2 - по центру.

Label.WordWrap [ = lExpression]

Позволяет регулировать процесс изменения текста, заполняющего метку при изменении ее размера. По умолчанию параметр lExpression равен .F. и текст в метке не переносится между строками, при этом горизонтальный размер метки изменяется так, чтобы вместить текст по длине, а вертикальный остается без изменения, чтобы вместить имеющееся число строк текста с учетом размера шрифта. Если параметр lExpression равен .T., то текст может переноситься между строками с изменением вертикального размера метки в зависимости от длины текста и размера шрифта. При этом свойство AutoSize игнорируется.

Object.BorderStyle [ = nStyle]

Это свойство определяет вид рамки для метки. По умолчанию параметр nStyle равен 0 и рамка не изображается. Если параметр nStyle равен 1, то метку будет окаймлять одинарная линия.

Очень полезное свойство AutoSize позволяет не отслеживать размер помещаемого в элемент управления текста, особенно если текст изменяется во время работы программы.

Объект Line создает элемент управления в виде линии, а Shape - в виде прямоугольника, окружности или овала. Требуемая форма последнего объекта в Visual FoxPro определяется свойством

Shape.Curvature [ = nCurve]

По умолчанию параметр nCurve равен 0 и рисуется прямоугольник. Если значение параметра nCurve находится в диапазоне от 1 до 98, то будет рисоваться прямоугольник со все более скругленными углами, если 99 - круг или эллипс.

В Visual Basic форма объекта определяется другим свойством и более жестко

Object.Shape [ = Value]

Параметр может принимать одно из следующих значений:

• 0 - прямоугольник (по умолчанию);

• 1 - квадрат;

• 2 - овал;

• 3 - окружность;

• 4 - прямоугольник со скругленными углами;

• 5 - квадрат со скругленными углами.

В Visual Basic объекты Line и Shape выполняют чисто оформительские функции, так как не реагируют на события. Аналогом объекта Shape, как элемента управления, в Visual Basic является Frame, который графически представляется прямоугольником с заголовком на верхней стороне и имеет необходимый набор событий.



Объекты-контейнеры

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

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

Object.ControlBox [ = lExpression]

Определяет, появляется ли системное меню в верхнем левом углу формы во время ее выполнения. Если параметр lExpression принимает значение .T. (по умолчанию), то системное меню отображается, если .F., то нет.

Object.MaxButton [ = lExpression]

Определяет, имеет ли форма кнопку Maximize (увеличение размера окна до максимального размера). Если параметр lExpression принимает значение .T. (по умолчанию), то форма имеет кнопку Maximize; если .F., то нет. Максимальное открытие окна Form во время выполнения программы вызывает событие Resize.

Object.MinButton [ = lExpression]

Определяет, имеет ли форма кнопку Minimize (уменьшение размера окна до пиктограммы). Если параметр lExpression равен .T. (по умолчанию), то форма имеет кнопку Minimize; если .F., то нет. Уменьшение формы до пиктограммы во время выполнения программы генерирует событие Resize.

Object.Icon [ = cFileName]

Определяет изображение, которое будет выведено при минимизации формы. Файл, имя которого указано в cFileName, должен иметь по умолчанию расширение ICO.

Object.KeyPreview [ = lExpression]

Определяет, прерывает ли событие KeyPress в форме событие KeyPress в элементе управления. Если параметр lExpression принимает значение .T., то сначала событие KeyPress получает форма, а затем активный элемент управления; если .F. (по умолчанию), то событие KeyPress получает активный элемент управления, а форма не получает.

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

Объект FormSet создает набор форм, что позволяет легко координировать работу сразу с несколькими формами. Этот объект есть только в Visual FoxPro, в Visual Basic ему в соответствие можно поставить коллекцию Forms. Набор форм обеспечивает следующие возможности:

• Одновременное выполнение какого-либо действия сразу для нескольких форм.

• Свободное управление расположением форм на экране для достижения максимального удобства в работе с ними.

• Создание одного объекта DataEnvironment для всех форм в наборе и обеспечение тем самым синхронизации в перемещении данных.

В то же время следует заметить, что наличие в Visual FoxPro такого объекта, как страничный блок (PageFrame), позволяет вместить практически неограниченный объем данных в одну форму.

Для набора форм можно использовать множество свойств, событий и методов, доступных для отдельной формы. Некоторые свойства для набора форм особенно важны. Так, в Visual FoxPro для набора форм существует свойство



Object.WindowType [ = nType]

Определяет поведение форм в наборе форм, если она запущена командой DO FORM. Для FormSet доступны следующие значения параметра Type:

nType Описание

0 Независимо от режима.

1 Модально. Никакие объекты других форм не могут стать активными, и меню не доступно. Все формы в FormSet активны.

2 Чтение. Объект FormSet ведет себя, как будто он был активизирован командой READ. Выполнение останавливается на методе Show или команде DO FORM. Когда форма дезактивирована, выполнение программы продолжается. Включено для совместимости снизу вверх.

3 Модальное чтение. FormSet ведет себя, как будто он был активизирован командой READ MODAL. Выполнение программы останавливается на методе Show или команде DO FORM. Любые объекты формы в FormSet и объектах формы, указанных в свойстве WindowList, доступны, но объекты других форм и меню не доступны. Включено для совместимости снизу вверх.

В Visual FoxPro в набор стандартных объектов входят и объекты для создания многостраничных форм.

Объект Page создает страницу в страничном блоке для размещения блока данных. Страница объединяет информацию, одновременно видимую на экране пользователем. Перелистывая страницы, пользователь может работать с большим объемом данных без необходимости перехода в другие окна или формы.

Страница как объект может входить только в страничный блок (PageFrame). В свою очередь, страница является объектом-контейнером и для определения количества включенных в нее элементов управления можно использовать свойство ControlCount. Для ссылки на отдельный элемент управления по его номеру и задания для него определенных значений свойств используется свойство Controls.

Object.KeyPreview [ = lExpression]

Определяет, будет ли событие KeyPress в элементе управления прервано событием KeyPress в форме. Если параметр lExpression принимает значение .T., то сначала событие KeyPress получает форма, а затем активный элемент управления; если .F. (по умолчанию), то событие KeyPress получает активный элемент управления, а форма не получает.

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

Page.PageOrder [ = nOrder]

Определяет относительный номер страницы в страничном блоке, что будет влиять на порядок их расположения.

Объект PageFrame создает страничный блок из набора страниц. Страничный блок позволяет компактно расположить большие объемы данных для работы с ними пользователя за счет размещения их на отдельных страницах, которые могут перелистываться. Узнать номер активной в данный момент страницы можно с помощью свойства ActivePage.

Объект ToolBar создает в Visual FoxPro панель инструментов, которая может облегчить пользователю выполнение часто повторяющихся действий. На панели инструментов мы можем размещать любые элементы управления. Это позволяет создавать универсальный набор элементов управления для использования с однотипными формами, например справочниками,



0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 [ 40 ] 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146