46033 (Turbo Vision), страница 2

2016-07-31СтудИзба

Описание файла

Документ из архива "Turbo Vision", который расположен в категории "". Всё это находится в предмете "информатика" из , которые можно найти в файловом архиве . Не смотря на прямую связь этого архива с , его также можно найти и в других разделах. Архив можно найти в разделе "рефераты, доклады и презентации", в предмете "информатика, программирование" в общих файлах.

Онлайн просмотр документа "46033"

Текст 2 страницы из документа "46033"

Флаги свойств.Параметр Options размером в одно 16-разрядное слово

задает ряд свойств отображаемого объекта.Назначение битов этого слова

следующее (в круглых скобках приведены константы, соответствующие еди-

нице в указанном бите) :

0-й бит (ofSelectable) - возможность активизации (выделения) данного

объекта в его владельце либо с помощью мыши,

либо с помощью клавиши табуляции.Это свойство

используется у любого объекта, и обычно флаг

задается равным единице.

1-ый бит (ofTopSelect) - возможность размещения объекта при его акти-

визации (выделении) сверху всех остальных

объектов конкретной группы.Это свойство ис-

пользуется у окон (тип tWindow) и их потомков

- диалоговых окон, стандартных диалоговых

окон и т.д.

2-ой бит (ofFirstClick) - возможность использования первого нажатия

клавиши не только для выделения объекта (бит

0), но и для выполнения действий, которые

активизируются данным объектом.Свойство ис-

пользуется практически у всех отображаемых

объектов.

3-ий бит (ofFramed) - наличие рамки вокруг отображаемого объекта.Это

свойство используется для подэлементов окон.Не

следует этот флаг путать с наличием рамки окна

(tWindow) и его потомков.

4-ый бит (ofPreProcess) - опережающая реакция на событие.Задание флага

приводит к изменению стандартной последова-

тельности реакции отображаемых элементов

группы на событие.Свойство может использо-

ваться у любого элемента по мере необходимос-

ти.

5-ый бит (ofPostProcess) - запаздывающая реакция на событие.Аналогично

предыдущему флагу, но с другими последстви-

ями его использования.

6-ой бит (ofBuffered) - наличие КЭШ-буфера у отображаемого объекта,

когда образ отображаемого объекта не создается

каждый раз заново при его прорисовке на экране,

а хранится в специальном КЭШ-буфере.Флаг важен

для сложных составных объектов типа окна и его

потомков.

7-ой бит (ofTileable) - расположение отображаемых объектов встык или

каскадно (с наложением).Этот флаг использу-

ется только у окон и их потомков.

8-ой бит (ofCenterX) - центрирование объекта по горизонтали.При зада-

нии этого флага объект при его первоначальной

прорисовке центрируется относительно верти-

кальной оси его владельца.Флаг может использо-

ваться у элементов, входящих в группу элемен-

тов.

9-ый бит (ofCenterY) - центрирование объекта по вертикали.Аналогично

предыдущему флагу, но только объект центриру-

ется относительно горизонтальной оси его вла-

дельца.

10-ый бит (ofValidate) - задается проверка правильности введенной в

объект информации при выходе из этого объек-

та (активизации другого объекта).Флаг ис-

пользуется только со строками ввода.

11-ый бит (ofVersion20) - используется Turbo Vision 2.0.Ряд объектов

(как, например, строка ввода) имеют принци-

пиальные отличия в зависимости от версии

Turbo Vision.Версия 2.0 имеет дополнительные

возможности по сравнению с версией 1.0.

12-ый бит (ofVersion10) - используется Turbo Vision 1.0.

Остальные биты слова флагов свойств не используются.Для задания

флагов свойств можно использовать константу ofCentred=$0300 (одновре-

менное центрирование по горизонтали и вертикали), с помощью которой

можно одновременно установить 8 и 9 биты параметра Options.Имеется

константа ofVersion=$3000, позволяющая выделить биты, связанные с вер-

сией Turbo Vision.

Флаги перемещения.Параметр DragMode размером в один байт задает

характеристики отображаемого объекта при его перемещении :

0-й бит (dmDragMove) - разрешение перемещения объекта либо с помощью

мыши, либо с помощью клавиш направления. Используется у тех

объектов, которые по тем или иным причинам могут перемещаться

в поле своего владельца, например у окон и их потомков.

1-й бит (dmDragGrow) - разрешение изменения размеров объекта либо с

помощью мыши, либо с помощью клавиш направления.Используется

у окон и их потомков.

4-й бит (dmLimitLoX) - запрещение левой стороне отображаемого объекта

выходить за заданные границы.В качестве таких границ часто

выступают размеры владельца данного объекта (например, разме-

ры рабочего поля, в котором размещены окна).

5-й бит (dmLimitLoY) - аналогично 4 биту, но запрещение верхней сторо-

не отображаемого объекта выходить за заданные границы.

6-й бит (dmLimitHiX) - аналогично 4 биту, но запрещение правой стороне

отображаемого объекта выходить за заданные границы.

7-й бит (dmLimitHiY) - аналогично 4 биту, но запрещение нижней стороне

отображаемого объекта выходить за заданные границы.

Остальные биты параметра DragMode не используются.Для одновремен-

ного задания ограничений на перемещение во всех направлениях можно ис-

пользовать константу dmLimitAll=$FO, устанавливающую в единицу биты с

4 по 7.

Флаги изменения размеров.Параметр GrowMode размером в один байт

задает свойства отображаемого объекта при попытке изменения размеров

его владельца с помощью мыши или клавиш направления.

0-й бит (gfGrowLoX) - левая сторона отображаемого объекта остается на

одном и том же расстоянии от правой стороны его владельца при

изменении размеров владельца.

1-й бит (gfGrowLoY) - верхняя сторона отображаемого объекта остается

на одном и том же расстоянии от правой стороны его владельца

при изменении размеров владельца.

2-й бит (gfGrowHiX) - правая сторона отображаемого объекта остается на

одном и том же расстоянии от правой стороны его владельца при

изменении размеров владельца.

3-й бит (gfGrowHiY) - нижняя сторона отображаемого объекта остается на

одном и том же расстоянии от нижней стороны его владельца при

изменении размеров владельца.

4-й бит (gfGrowRel) - отображаемый объект изменяет свои размеры про-

порционально размерам владельца.Такой режим может потребовать-

ся при отображении окна в случае изменения режима адаптера с

25 строк на 43/50 строк и наоборот.

Остальные биты параметра GrowMode не используются Для одновремен-

ной фиксации сторон отображаемого объекта относительно размеров его

владельца можно использовать константу gfGrowAll=$OF, устанавливающую

в единицу биты с 0 по 3.

Флаги обработки событий.Параметр EventMask размером в одно слово

определяет, какие события может обрабатывать данный отображаемый объ-

ект.

Флаги состояния.Параметр State размером в одно слово определяет

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

этого параметра происходит автоматически в процессе выполнения прог-

раммы (например, выделенное состояние объекта), и не следует без осо-

бых причин менять его в программе.Если же все-таки потребуется произ-

вести те или иные изменения, их необходимо производить с помощью соот-

ветствующих методов, специально для этого предназначенных.

Отдельные биты параметра имеют следующее значение :

0-й бит (sfVisibl) - объект может быть видим в поле своего владель-

ца.Если этот флаг установлен (такое состояние задается авто-

матически при создании объекта), объект будет видим полностью

или частично, если только он не закрывается другими отобража-

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

ния этого флага используется метод Show :

procedure tView.Show;

Для сброса - метод Hide :

procedure tView.Hide;

Чтобы определить, виден ли на самом деле объект, можно вос-

пользоваться методом Exposed :

function tView.Exposed: Boolean;

где результат - True, если какая-либо часть объекта видна на

экране.

1-й бит (sfCursorVis) - курсор объекта видим в поле объекта.У некото-

рых отображаемых объектов курсор задается видимым (например, у

строки ввода), у других - невидимым (например, у статическо-

го текста).Чтобы изменить заданное состояние и сделать курсор

видимым, следует воспользоваться методом ShowCursor :

procedure tView.ShowCursor;

чтобы сделать его невидимым, используется метод HideCursor :

procedure tView.HideCursor;

2-й бит (sfCursorIns) - увеличенный размер курсора.Для задания курсора

увеличенного размера воспользуемся методом BlockCursor :

procedure tView.BlockCursor;

для задания нормального размера курсора (такой размер задается

автоматически при создании объекта) используется метод

NormalCursor :

procedure tView.NormalCursor;

3-й бит (sfShadow) - объект имеет тень.При создании одних объектов

(например, окон) задается тень, у других объектов (например,

списков) тень не задается.Если требуется изменить заданное

состояние этого флага, следует воспользоваться универсальным

методом SetState :

procedure tView.SetState(AState: Word; Enable: Boolean);virtual;

где AState - флаг, который следует изменитьЖ

Enable=True, если флаг следует установить, и False, если

сбросить.

С помощью этого метода можно изменить любые флаги состояния,

но при каждом обращении к нему можно изменить только один

флаг.

4-й бит (sfActiv) - объект является либо активным окном ( окном, с ко-

торым происходит в настоящее время работа в программе), или

подэлементом активного окна.Как правило, этот флаг автомати-

чески меняет свое значение в процессе работы программы и изме-

нять его в программе практически не требуется.

5-й бит (sfSelected) - объект является выделенным в группе.В каждой

группе может быть только один выделенный объект.Как и предыду-

щий флаг, состояние этого флага изменяется автоматически в

процессе работы программы, и обычно не возникает необходимости

принудительного изменения его состояния (изменить его также

можно с помощью метода SetState).

6-й бит (sfFocused) - объект является сфокусированным, т.е.является

выделенным в группе, и все его владельцы также являются выде-

ленными.Сфокусированный объект - то тот отображаемый объект,

с которым в настоящее время происходит работа (например,

конкретный редактор текста, если на экране открыто несколько

редакторов).

7-й бит (sfDragging) - объект находится в режиме перемещения или изме-

нения своих размеров либо с помощью клавиш направления, либо с

помощью мыши.Обычно этот флаг используется у окон и устанавли-

вается у окна при переходе его в такой режим, а сбрасывается

при выходе из этого режима.Принудительное изменение флага воз-

можно с помощью метода SetState.

8-й бит (sfDisabled) - объект является "запрещенным", т.е. не реагиру-

ющим ни на какие воздействия.Задать этот флаг можно также с

помощью метода SetState.

9-й бит (sfModal) - объект является модальным.Этот флаг характерен для

окон и устанавливается, если окно находится в модальном режиме

(использование метода ExecView или ExecuteDialog).Принудительно

изменять этот флаг не следует.

10-й бит (sfExposed) - объект имеет в качестве окончательного владель-

ца объект tApplication, т.е. имеет возможность отражаться

на экране (не путать с флагом ofVisible).Принудительно изме-

нять флаг не следует.

Остальные биты параметра State не используются.

Контекстная помощь.Этот параметр (HelpCtx) представляет собой

число типа Word, который задает значение параметра контекстной помощи

в случае, если отображаемый объект является сфокусированным.Этот пара-

метр используется в справочной системе и в системе строк состояния.Ес-

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

нулю (константа hcNoContex).Это же значение принимает параметр и при

создании объекта.

Следующий отображаемый элемент.Этот параметр (Next) содержит ука-

затель на следующий объект в группе, в которую входит данный объ-

ект.Параметр устанавливается автоматически при включении объекта в

группу.Принудительно менять значение этого параметра не следует.

Владелец объекта.Параметр (Owner) представляет собой указатель на

владельца объекта - группу, в которой расположен данный объект.Пара-

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

обычно с помощью метода Insert объекта tGroup или другого метода,

включающего в себя метод Insert, и изменять его принудительно не сле-

Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5184
Авторов
на СтудИзбе
436
Средний доход
с одного платного файла
Обучение Подробнее