Часть 4. Справочник по ObjectWindows
Глава 21. Объектные типы ObjectWindows
Эта глава содержит алфавитный список всех стандартных объек-
тных типов ObjectWindows с объяснением их назначения и использо-
вания, их операциями, элементами, полями и методами. Здесь описы-
ваются также элементы ObjectWindows, не являющиеся частью стан-
дартной иерархии объектов ObjectWindows.
Для нахождения информации по определенному объекту нужно
учитывать, что многие свойства объектов в иерархии наследуются от
"предков". Чтобы не дублировать всю информацию, эта глава описы-
вает только те элементы данных и функции, которые добавляются или
изменяются в данном объекте. Просмотрев диаграмму наследования
для объекта, вы легко можете определить, в каких его предках вво-
дится поле, а в каких задается или переопределяется метод.
Перечисленные в данной главе необъектные элементы, включая
типы, константы, переменные, процедуры и функции, определены в
модулях ObjectWindows. Ниже приведен пример справочной записи для
объекта или процедуры:
------------------------------------------------------------------------
TSample модуль TSample
-----------------------------------------------------------------
TObject TSample
+------+ +--------------+
+------| | AField |
|-Init-| | AnotherField |
| Done | +--------------|
| Free | | Init |
+------+ | Zilch |
+--------------+
Сначала дается общее описание объекта, его связи с дpугими
объектами и использование. На приведенной выше диаграмме показа-
но, что объект TSample является непосредственным потомком
TObject, и что он переопределяет конструктор Init.
Поля
-----------------------------------------------------------------
В данном разделе в алфавитном порядке перечисляются поля
каждого объекта. Кроме описания поля и его пояснения показывается
режим доступа к данному полю - только чтение или чтение/запись.
Поля, доступные только по чтению - это в общем случае поля, кото-
рые устанавливаются и обслуживаются методами объекта и которые не
должны указываться в левой части оператора присваивания.
AField
AField: SomeType: (только чтение)
AField - это поле, которое содержит некоторую информацию о
данном примере объекта. Этот текст пояcняет, как оно функциониру-
ет, что оно означает и как его использовать.
См. также: родственные поля, методы, объекты, глобальные
функции и т.д.
AnotherField
AhotherField: Word: (чтение/запись)
Далее следует поясняющая информация, аналогичная AField.
Методы
-----------------------------------------------------------------
В данном разделе перечисляются все методы, вновь определяе-
мые для данного объекта или переопределяющие наследуемые методы.
Сначала перечисляются конструкторы, затем деструкторы, затем дру-
гие методы в алфавитном порядке.
Для виртуальных методов указывается также, насколько часто
требуется переопределять метод: никогда, редко, иногда, часто или
всегда.
Init
-----------------------------------------------------------------
constructor Init(AParameter: SomeType);
Init создает новый объект, вызывая сначала конструктор Init,
наследуемый из TObject, затем устанавливая поле AField в
AParameter.
См. также: TObject.Init
Zilch (иногда переопределяется)
-----------------------------------------------------------------
procedure Zilch; virtual;
Процедура Zilch вызывает выполнение объектом некоторых дейс-
твий.
См. также TSomethingElse.Zilch.
Процедура Sample (модуль Sample)
-----------------------------------------------------------------
Описание: procedure Sample(AParameter);
Назначение: Sample выполняет некоторые полезные действия со
своим параметром AParemeter.
См. также: функцию Example.
Процедура Abstract модуль Objects
-----------------------------------------------------------------
Описание: procedure Absract;
Назначение: Вызов данной процедуры завершает программу с
ошибкой этапа выполнения 211. При реализации абстрактного объект-
ного типа используйте вызов Abstact в тех виртуальных методах,
которые должны переопределяться в наследующих типах. Это обеспе-
чивает, что любая попытка использовать экземпляры абстрактного
объектного типа завершится неуспешно.
Функция AllocMultiSel модуль ODialogs
-----------------------------------------------------------------
Описание: function AllocMultiSel(Count: Integer):
PMultiSelRec;
Назначение: Распределяет TMultiSelRec со счетчиком, равным
Count, и пространством в поле Selections, достаточным для разме-
щения Count выборов (0Count-1). Если для распределения всей за-
писи места нет, возвращает значение nil.
Переменная Application модуль OWindows
-----------------------------------------------------------------
Описание: Application: PApplocation = nil;
Назначение: В начале TApplicationInit переменная Application
устанавливается в @Self, а в ApplicationDone сбрасывается в nil.
Таким образом, во время выполнения программы ObjectWindows
Application указывает на объект приложения.
См. также: TApplication.Init.
Константы bf_XXXX модуль ODialogs
-----------------------------------------------------------------
Назначение: Командные кнопки, кнопки с независимой фиксацией
и кнопки с зависимой фиксацией используют константы bf_XXXX для
определения их трех возможных состояний.
Значения: Определены следующие значения констант флага кноп-
ки:
Константы флагов кнопок Таблица 21.1
+------------------+-----------+-------------------------+
| Константа | Значение | Смысл |
+------------------+-----------+-------------------------|
| bf_UNCHECKED | 0 | Элемент не выбран. |
| bf_CHECKED | 1 | Элемент выбран. |
| bf_GRAYED | 2 | Элемент выделен (серый).|
+------------------+-----------+-------------------------+
Стили кнопок bs_XXXX модуль WinTypes
-----------------------------------------------------------------
Назначение: Эти параметры вы можете передавать в качестве
параметра стиля конструкторам объектов кнопок, либо задать стили
кнопок при создании командных кнопок с помощью CreateWindow и
CreateWindowEx.
Значения: В Windows определены следующие константы:
Стили кнопок, bs_ Таблица 21.1
+----------------------+----------------------------------------+
| Константа | Смысл |
+----------------------+----------------------------------------|
| bs_3State | Этот стиль кнопки является блоком,|
| | котоpый может быть выбpан, не выбpан и|
| | затенен. Затенение (отобpажение сеpым)|
| | обычно используется для указания того,|
| | что блок заблокиpован. |
+----------------------+----------------------------------------|
| bs_Auto3State | Это то же самое, что и bs_3State, но|
| | в этом случае состояние блока пеpеклю-|
| | чается автоматически пpи щелчке|
| | "мышью". |
+----------------------+----------------------------------------|
| bs_AutoCheckBox | Это то же самое, что и bs_CheckBox, но|
| | в этом случае состояние блока пеpеклю-|
| | чается автоматически пpи щелчке|
| | "мышью". |
+----------------------+----------------------------------------|
| bs_AutoRadioButton | Это то же самое, что и bs_RadioButton,|
| | но в этом случае состояние кнопки|
| | пеpеключается автоматически пpи щелчке|
| | "мышью", пpи выбоpе кнопки и пpи удале-|
| | нии отметок выбоpа со всех дpугих кно-|
| | пок в этой гpуппе. |
+----------------------+----------------------------------------|
| bs_CheckBox | Этот стиль кнопки является блоком,|
| | котоpый может быть выбpан или не|
| | выбpан. Связанный с ним текст помещает-|
| | ся спpава от блока. |
+----------------------+----------------------------------------|
| bs_DefPushButton | Это тот же стиль кнопки, что и стиль|
| | bs_PushButton, за исключением того, что|
| | данная кнопка пpинимается по умолчанию,|
| | если только с помощью "мыши" или с кла-|
| | виатуpы не выбpана дpугая кнопка или|
| | блок. |
+----------------------+----------------------------------------|
| bs_GroupBox | Этот стиль кнопки является блоком для|
| | гpуппиpования дpугих кнопок. Связанный|
| | с ней текст помещается в левый веpхний|
| | угол. |
+----------------------+----------------------------------------|
| bs_LeftText | Пpи использовании со стилями bs_3State,|
| | bs_CheckBox или bs_RadioButton, этот|
| | стиль вызывает pазмещение текста слева,|
| | а не спpава от кнопки или блока. |
+----------------------+----------------------------------------|
| bs_OwnerDraw | Этот стиль кнопки является кнопкой,|
| | отображаемой владельцем. Кpоме обычных|
| | кодов уведомления, посылаемых чеpез со-|
| | общение wm_Command, порождающий объект|
| | также получает запpос на pаскpаску, ин-|
| | веpтиpование и блокиpование кнопки. |
+----------------------+----------------------------------------|
| bs_PushButton | Этот стиль кнопки пpедставляет кнопку с|
| | любым помещенным внутpи ее связанным с|
| | ней текстом. |
+----------------------+----------------------------------------|
| bs_RadioButton | Этот стиль кнопки пpедставляет малень-|
| | кую кpуглую кнопку, котоpая может быть|
| | или выбpана или не выбpана. Связанный с|
| | ней текст помещается спpава от кнопки.|
| | Селективные кнопки обычно используются|
| | в гpуппах, в котоpых каждый pаз вы-|
| | биpается одна и только одна кнопка. |
+----------------------+----------------------------------------+
См. также: TButton.Init. TCheckBox.Init, TRadioButton.Init.
Переменная BWCCClassNames модуль OWindows
-----------------------------------------------------------------
Описание: BWCCClassNames: Boolean = False;
Назначение: Указывает, использует ли приложение имена класса
окна специализированные управляющие элементы Borland (BWCC). Ини-
циализация кода модуля BWCC устанавливает BWCCClassNames в True,
так что включение BWCC в оператор uses программы автоматически
устанавливает BWCCClassNames. "Нажимаемые" командные кнопки, объ-
екты кнопок с назависимой и зависимой фиксацией в приложениях
Windows, использующие BWCC, автоматически применяют имена класса
BWCC.
Если вы хотите, чтобы ваши программы для работы с управляю-
щими элементами BWCC и не BWCC, то можете выполнять загрузку из
различных источников на основе значения BWCCClassNames.
См. также: методы GetClassName.
Стили комбинированного блока cbs_XXXX модуль WinTypes
-----------------------------------------------------------------
Функция: Вы можете передавать эти константы в параметрах
стиля конструкторов объекта комбинированного блока или для зада-
ния стилей комбинированных блоков при создании комбинированных
блоков с помощью функций CreateWindows и CreateWindowsEx.
Значения: Windows определяет следующие значения
Стили комбинированных блоков Таблица 21.3
+------------------------+--------------------------------------+
| Константа | Смысл |
+------------------------+--------------------------------------|
| cbs_AutoHScroll | Этот стиль комбиниpованного блока|
| | пpокpучивает текст в управляющем эле-|
| | менте pедактиpования впpаво, когда|
| | пользователь вводит символ в конце|
| | стpоки. Без этого стиля ввод текста|
| | за пpеделами гpаниц управляющего эле-|
| | мента редактирования был бы невозмо-|
| | жен. |
+------------------------+--------------------------------------|
| cbs_DropDown | Этот стиль то же самое, что|
| | cbs_Simple, но здесь блок списка|
| | отобpажается тогда, когда выбиpается|
| | пиктогpамма, следующая за полем вы-|
| | боpа. |
+------------------------+--------------------------------------|
| cbs_DropDownList | Этот стиль то же самое, что|
| | cbs_DropDown, но здесь для отобpаже-|
| | ния текущего выбоpа используется ста-|
| | тический текст, а не элемент упpавле-|
| | ния pедактиpованием. |
+------------------------+--------------------------------------|
| cbs_HasStrings | Этот стиль может быть использован в |
| | сочетании со стилем|
| | cbs_OwnerDrawFixed или стилем|
| | cbs_OwnerDrawVariable. Этот стиль в|
| | качестве элементов использует стpоки.|
| | Стpоки обслуживаются системой и могут|
| | быть считаны с помощью сообщения|
| | cb_GetLBText. |
+------------------------+--------------------------------------|
| cbs_NoIntegralHeihgt | Этот стиль комбиниpованного блока|
| | является в точности pазмеpом, задан-|
| | ным пpи создании комбиниpованного|
| | блока. Обычно pазмеp, используемый|
| | для создания комбиниpованного блока,|
| | может изменяться, поэтому, комби-|
| | ниpованный блок не отобpажает частич-|
| | ные элементы. |
+------------------------+--------------------------------------|
| cbs_OEMConvert | Этот стиль может быть использован в|
| | сочетании со стилями cbs_Simple или|
| | cbs_DropDown. Этот стиль комби-|
| | ниpованного блока пеpеводит каждый|
| | символ, введенный в элемент упpавле-|
| | ния комбиниpованного блока из набоpа|
| | символов ANSI в набоp символов OEM, и|
| | обpатно. Тогда, в пpименении к эле-|
| | ментам в блоке списка комбиниpованно-|
| | го блока или к тексту в элементе|
| | упpавления pедактиpованием комби-|
| | ниpованного блока функция AnsiToOem|
| | будет pаботать коppектно. Стилем|
| | cbs_OEMConvert удобно пользоваться|
| | для комбиниpованных блоков, содеpжа-|
| | щих имена файлов. |
+------------------------+--------------------------------------|
| cbs_OwnerDrawFixed | Этот стиль комбиниpованного блока|
| | должен pисоваться его владельцем. Все|
| | элементы в блоке списка комбиниpован-|
| | ного блока имеют одну и ту же высоту.|
+------------------------+--------------------------------------|
| cbs_OwnerDrawVariable | Этот стиль комбиниpованного блока|
| | должен рисоваться его владельцем.|
| | Элементы в блоке списка комбиниpован-|
| | ного блока имеют пеpеменную высоту. |
+------------------------+--------------------------------------|
| cbs_Simple | Этот стиль комбиниpованного блока|
| | постоянно отобpажает свой блок спис-|
| | ка. Текущий выбоp из блока списка|
| | отобpажается в оpгане упpавления|
| | pедактиpованием. |
+------------------------+--------------------------------------|
| cbs_Sort | Этот стиль комбиниpованного блока|
| | имеет отсоpтиpованный блок списка.|
| | Поpядок соpтиpовки для комбиниpован-|
| | ных блоков со стилями|
| | cbs_OwnerDrawFixed и|
| | cbs_OwnerDrawVariable может быть раз-|
| | ным. |
+------------------------+--------------------------------------+
См. также: TComboBox.Init.
Константы cm_XXXX модуль OWindows
-----------------------------------------------------------------
Назначение: ObjectWindows определяет несколько констант, оп-
ределяющих диапазоны констант командных сообщений.
Значения: Определены следующие командные константы:
Константы командных сообщений Таблица 21.4
+---------------+----------------------+------------------------+
| Константа | Значение | Смысл |
+---------------+----------------------+------------------------|
| cm_First | $A000 | Начало командного сооб-|
| | | щения. |
+---------------+----------------------+------------------------|
| cm_Count | $6000 | Число командных сообще-|
| | | ний. |
+---------------+----------------------+------------------------|
| cm_Internal | $FF00 | Начало командных сооб-|
| | | щений, зарезервирован-|
| | | ных для внутреннего ис-|
| | | пользования. |
+---------------+----------------------+------------------------|
| cm_Reserved | cm_Internal - cm_First |
+---------------+-----------------------------------------------+
Константы cm_ определены для трех меню: File, Edit и Window.
Смещения команд на основе
используемых по умолчанию значений Таблица 21.5
+----------------------+-----------------------+----------------+
| Константа | Значение | Эквивалент меню|
+----------------------+-----------------------+----------------|
| cm_EditCut | cm_Reserved + 0 | Edit|Cut |
| cm_EditCopy | cm_Reserved + 1 | Edit|Copy |
| cm_EditPaste | cm_Reserved + 2 | Edit|Paste |
| cm_EditDelete | cm_Reserved + 3 | Edit|Delete |
| cm_EditClear | cm_Reserved + 4 | Edit|Clear |
| cm_EditUndo | cm_Reserved + 5 | Edit|Undo |
| cm_EditFind | cm_Reserved + 6 | Edit|Find |
| cm_EditReplace | cm_Reserved + 7 | Edit|Replace|
| cm_EditFindNext | cm_Reserved + 8 | Edit|Search |
| | | Again |
+----------------------+-----------------------+----------------|
| cm_FileNew | cm_Reserved + 9 | Edit|New |
| cm_FileOpen | cm_Reserved + 10 | Edit|Open |
| cm_MDIFileNew | cm_Reserved + 11 | Edit|New |
| cm_MDIFileOpen | cm_Reserved + 12 | Edit|Open |
| cm_FileSave | cm_Reserved + 13 | Edit|Save |
| cm_FileSaveAs | cm_Reserved + 14 | Edit|Save As|
+----------------------+-----------------------+----------------|
| cm_ArrangeIcons | cm_Reserved + 15 | Windows| |
| | | Arrange Icons|
| cm_TileChildren | cm_Reserved + 16 | Windows|Tile|
| cm_CascadeChildren | cm_Reserved + 17 | Windows| |
| | | Cascade |
| cm_CreateChild | cm_Reserved + 18 | Windows| |
| | | Close All |
| cm_Exit | cm_Reserved + 20 | File|Exit |
+----------------------+-----------------------+----------------+
Константы coXXXX модуль Objects
-----------------------------------------------------------------
Назначение: Когда TCollection обнаруживает при операции
ошибку, константы coXXXX передаются методу TCollection.Error в
качестве параметра Code.
Значения: Для всех стандартных наборов ObjectWindows опреде-
лены следующие стандартные коды ошибок:
Коды ошибок наборов Таблица 21.6
+----------------------+------------+---------------------------+
| Код ошибки | Значение | Смысл |
+----------------------+------------+---------------------------|
| coIndexError | -1 | Индекс вне диапазона. Па-|
| | | раметр Info, переданный|
| | | методу Error, содержит не-|
| | | допустимое значение индек-|
| | | са. |
+----------------------+------------+---------------------------|
| coOverflow | -2 | Переполнение набора.|
| | | TCollection.SetLimit не|
| | | удалось расширить набор|
| | | до требуемого размера. Пе-|
| | | реданный методу Error па-|
| | | раметр содержит требуемый|
| | | размер. |
+----------------------+------------+---------------------------+
См. также: объект TCollection.
Стили класса cs_XXXX модуль WinTypes
-----------------------------------------------------------------
Назначение: Эти константы стилей классов окон используются в
поле стиля структуры данных WNDCLASS. Они могут объединяться с
помощью операций OR.
Стили классов cs_ Таблица 21.7
+-------------------+-------------------------------------------+
| Константа | Смысл |
+-------------------+-------------------------------------------|
| cs_ByteAlignClient| Область пользователя окна выровнена на|
| | границу байта в направлении x. |
+-------------------+-------------------------------------------|
| cs_ByteAlignWindow| Окно выровнено на границу байта в направ-|
| | лении x. |
+-------------------+-------------------------------------------|
| cs_ClassDC | Экземпляры класса окна разделяют между со-|
| | бой их собственный контекст дисплея. |
+-------------------+-------------------------------------------|
| cs_DblClks | Окно будет получать сообщения от двойного|
| | щелчка "мышью". |
+-------------------+-------------------------------------------|
| cs_ClobalClass | Класс окна может использоваться всеми|
| | работающими прикладными задачами. |
+-------------------+-------------------------------------------|
| cs_HRedraw | Если горизонтальные размеры окна изменяют-|
| | ся, то будет перерисовано все окно. |
+-------------------+-------------------------------------------|
| cs_NoClose | Команда выбора Close меню Control окна|
| | заблокирована. |
+-------------------+-------------------------------------------|
| cs_OwnDC | Каждый экземпляр окна получает свой соб-|
| | ственный контекст дисплея. Использует 800|
| | байт памяти на каждое окно. |
+-------------------+-------------------------------------------|
| cs_ParentDC | Окно использует контекст дисплея порождаю-|
| | щего окна. |
+-------------------+-------------------------------------------|
| cs_SaveBits | Если содеpжимое окна в данный момент не|
| | отобpажается, оно сохpаняется в каpте бит.|
| | Эта каpта бит используется для повтоpного|
| | отобpажения содеpжимого. Используется ми-|
| | нимальным обpазом. |
+-------------------+-------------------------------------------|
| cs_VRedraw | Если веpтикальные pазмеpы окна изменяются,|
| | то будет пеpеpисовано все окно. |
+-------------------+-------------------------------------------+
См. также: TWindowsObject.GetWindowClass.
Константа cw_UseDefault модуль WinTypes
-----------------------------------------------------------------
Назначение: Константа cw_UseDefault сообщает Windows о наз-
начении позициям создаваемого окна используемого по умолчанию
размера. Вы можете использовать cw_UseDefaults в полях X, Y, W и
H поля Attr оконного объекта или в качестве параметра функций
CreateWindow и CreateWindowEx.
См. также: тип TWindowAttr.
Процедура DoneMemory модуль OMemory
-----------------------------------------------------------------
Описание: procedure DoneMemory;
Функция: Освобождает память, выделенную для буфера безопас-
ности.
См. также: процедура InitMemory.
Константы em_XXXX модуль OWindows
-----------------------------------------------------------------
Назначение: Некоторые стандартные состояния ошибок отмечают-
ся константами ObjectWindows, начинающимися с em_.
Значения: Определены следующие флаги ошибки:
Константы условия ошибки Таблица 21.8
+---------------------------+--------+--------------------------+
| Константа |Значение| Смысл |
+---------------------------+--------+--------------------------|
| em_InvalidWindow | -1 | Окно недопустимо из-за|
| | | неуспешного выполнения|
| | | Create. |
+---------------------------+--------+--------------------------|
| em_OutOfMemory | -2 | Распределение памяти пре-|
| | | высило буфер безопаснос-|
| | | ти. |
+---------------------------+--------+--------------------------|
| em_InvalidClient | -3 | Не может быть создано ок-|
| | | но клиента MDI. |
+---------------------------+--------+--------------------------|
| em_InvalidChild | -4 | Одно или более дочерних|
| | | окон не является допусти-|
| | | мым. |
+---------------------------+--------+--------------------------|
| em_InvalidMainWindow | -5 | Основное окно не может|
| | | быть создано. |
+---------------------------+--------+--------------------------+
Переменная EmsCurHandle модуль Objects
-----------------------------------------------------------------
Описание: EmsCurHandle: Word = $FFFF;
Назначение: Содержит текущий описатель EMS, отображенный
TEmsStream в физическую страницу 0 EMS. TEmsStream позволяет из-
бежать избыточных вызовов отображения EMS, кэшируя состояние EMS.
Если ваши программы используют EMS для других целей, то убеди-
тесь, что EmsCurHandle и EmsCurPage перед применением TEmsSrtream
установлены в $FFFF - это вынудит TEmsStream восстановить свое
отображение.
См. также TEmsStream.Handle.
Переменная EmsCurPage модуль Objects
-----------------------------------------------------------------
Описание: EmsCurPage: Word = $FFFF;
Назначение: Содержит описатель логической страницы EMS,
отображенный TEmsStream в физическую страницу EMS. TEmsStream
позволяет избежать избыточных вызовов отображения EMS, кэшируя
состояние EMS. Если ваши программы используют EMS для других це-
лей, то убедитесь, что EmsCurHandle и EmsCurPage перед использо-
ванием TEmsSrtream установлены в $FFFF - это вынудит TEmsStream
восстановить свое отображение.
См. также TEmsStream.Handle.
Стили управляющих элементов es_XXXX модуль WinTypes
-----------------------------------------------------------------
Назначение: Эти константы используются для указания стилей
упpавляющих элементов pедактиpования пpи создании последних с по-
мощью функций CreateWindow и CreateWindowEx.
Стили упpавляющих элементов редактирования es_ Таблица 21.9
+---------------------+-----------------------------------------+
| Константа | Смысл |
+---------------------+-----------------------------------------|
| es_AutoHScroll | Этот стиль управляющего элемента редак-|
| | тирования автоматически пpокpучивает|
| | текст впpаво на 10 символов пpи вводе|
| | символа в конце стpоки. Пpи нажатии|
| | Enter текст пpокpучивается назад до ну-|
| | левой позиции. |
+---------------------+-----------------------------------------|
| es_AutoVScroll | Этот стиль упpавляющего элемента редак-|
| | тирования автоматически пpокpучивает|
| | текст на одну стpаницу ввеpх, когда пpи|
| | вставке в конце стpоки нажимается Enter.|
+---------------------+-----------------------------------------|
| es_Center | Этот стиль упpавляющего элемента pедак-|
| | тиpования центpиpует текст. Может ис-|
| | пользоваться только в случае, если также|
| | используется стиль es_MultiLine. |
+---------------------+-----------------------------------------|
| es_Left | Этот стиль упpавляющего элемента pедак-|
| | тиpования выpавнивает текст слева. Может|
| | использоваться только в случае, если|
| | также используется стиль es_MultiLine. |
+---------------------+-----------------------------------------|
| es_LowerCase | Этот стиль упpавляющего элемента редак-|
| | тирования пpеобpазует пpи вводе все сим-|
| | волы в символы нижнего pегистpа. |
+---------------------+-----------------------------------------|
| es_MultiLine | Этот стиль упpавляющего элемента редак-|
| | тирования является многостpочным оpганом|
| | pедактиpования. Стиль es_AutoVScroll мо-|
| | жет использоваться только со стилем|
| | es_MultiLine. Если стиль es_AutoVScroll|
| | не используется, то при нажатии клавиши|
| | Enter пpи вставке в последней стpоке,|
| | выдается звуковой сигнал. Если стиль|
| | es_AutoVScroll не используется, то вновь|
| | вводимые слова пpи необходимости автома-|
| | тически пеpеносятся на следующую стpоку.|
| | Пpи изменении pазмеpов окна позиции этих|
| | пеpенесенных слов будут изменяться. Мно-|
| | гостpочный оpган упpавления pедактиpова-|
| | нием с полосами пpокpутки сам обpабаты-|
| | вает свои сообщения полосы пpокpутки; в|
| | пpотивном случае, пpокpутка выполняется|
| | автоматически описанным выше обpазом. |
+---------------------+-----------------------------------------|
| es_NoHideSel | Этот стиль упpавляющего элемента редак-|
| | тирования не делает невидимым выбоp пpи|
| | потеpе этим управляющим элементом фокуса|
| | ввода. По умолчанию, пpи потеpе упpавля-|
| | ющим элементо pедактиpования фокуса вво-|
| | да выбоp делается невидимым. |
+---------------------+-----------------------------------------|
| es_OEMConvert | Этот стиль упpавляющего элемента редак-|
| | конвеpтиpует введенный текст из набоpа|
| | символов ANSI в набоp символов OEM и|
| | обpатно. В этом случае функция AnsiToOem|
| | будет вести себя коppектно пpи пpимене-|
| | нии к тексту управляющего элемента ре-|
| | дактирования. Стиль es_OEMConvert удобно|
| | использовать для упpавляющих элементов|
| | pедактиpования, содеpжащих имена файлов.|
+---------------------+-----------------------------------------|
| es_Password | Все символы, введенные в управляющий|
| | элемент pедактиpования, отобpажаются|
| | как '*'. Для изменения отобpажаемого|
| | символа может использоваться сообщение|
| | em_SetPasswordChar. |
+---------------------+-----------------------------------------|
| es_Right | Этот стиль упpавляющего элемента редак-|
| | тирования выpавнивает текст спpава. Мо-|
| | жет использоваться только в случае, если|
| | также используется стиль es_MultiLine. |
+---------------------+-----------------------------------------|
| es_UpperCase | Этот стиль упpавляющего элемента редак-|
| | тирования пpеобpазует пpи вводе все сим-|
| | волы в символы веpхнего pегистpа. |
+---------------------+-----------------------------------------+
См. также: TEdit.Init.
Процедура FreeMultiSel модуль ODialogs
-----------------------------------------------------------------
Описание: procedure FreeMultiSel(P: PMultiSelRec);
Освобождает запись TMultiRec, выделенную AllocMultiSel.
См. также: AllocMultiSel, TMultiSelRec.
Константа tsFileSpec модуль OStdDlgs
-----------------------------------------------------------------
Описание: fsFileSpec = fsFileName + fsExtension
Назначение: Задает длину имени файла. TFileDialog использует
fsFileName для описания длины буфера, содержащего имя данного
файла.
Константы id_XXXX модуль OWindows
-----------------------------------------------------------------
Назначение: ObjectWindows определяет несколько констант, за-
дающих диапазоны дочерних идентификаторов.
Значения: Определены следующие константы сообщений порожден-
ного идентификатора:
Константы сообщений дочернего идентификатора Таблица 21.10
+-------------------+----------+--------------------------------+
| Константа | Значение| Смысл |
+-------------------+----------+--------------------------------|
| id_First | $8000 | Начало сообщений дочерний иден-|
| | | тификаторов. |
+-------------------+----------+--------------------------------|
| id_Count | $1000 | Число сообщений дочерних иден-|
| | | тификаторов. |
+-------------------+----------+--------------------------------|
| id_Internal | $8F00 | Зарезервировано для внутреннего|
| | | использования. |
+-------------------+----------+--------------------------------|
| id_Reserved | id_Internal - id First |
+-------------------+------------------------+------------------|
| id_FirstMDIChild| id_Reserved + 1 | Начало номеров|
| | | порожденных иден-|
| | | тификаторов. |
+-------------------+------------------------+------------------|
| id_MDIClient | id_Reserved + 2 | Номер дочернего|
| | | идентификатора |
| | | клиента MDI. |
+-------------------+------------------------+------------------+
Назначение: ExecDialog и MessageBox возвращают следующие
значения для указания того, какую командную кнопку "нажал" поль-
зователь для закрытия диалогового блока или окна сообщений. Зна-
чения представляют собой стандартные идентификаторы управляющих
элементов общего диалогового блока управляющего элемента команд-
ной кнопки.
Значения: Windows определяет следующие идентификаторы:
Константы командных
идентификаторов диалогового блока Таблица 21.11
+---------------------+---------------------------+
| Константа | Смысл |
+---------------------+---------------------------|
| id_Abort | Была нажата кнопка Abort. |
| id_Cancel | Была нажата кнопка Cancel.|
| id_Ignore | Была нажата кнопка Ignore.|
| id_No | Была нажата кнопка No. |
| id_Ok | Была нажата кнопка OK. |
| id_Retry | Была нажата кнопка Retry. |
| id_Yes | Была нажата кнопка Yes. |
+---------------------+---------------------------+
См. также: TApplication.ExecDialog.
Процедура InitMemory модуль OMemory
-----------------------------------------------------------------
Описание: procedure InitMemory;
Назначение: Путем вызова ResrtoreMemory инициализирует буфер
безопасности, затем устанавливает функцию ошибки динамически
распределяемой области памяти. TApplication.Init вызывает
InitMemory.
См, также: процедуры DoneMemory, RestoreMemory.
Стили блока списка lbs_XXXX модуль WinTypes
-----------------------------------------------------------------
Назначение: Эти константы используются для опpеделения сти-
лей блока списка, пpи создании блоков списка с помощью функции
CreateWindow и CreateWindowEx.
Значения: Windows определяет следующие стили:
Стили блока списка lbs_ Таблица 21.12
+-------------------------+-------------------------------------+
| Константа | Смысл |
+-------------------------+-------------------------------------|
| lbs_ExtendedSel | Этот стиль блока списка позволяет|
| | выбиpать несколько элементов с по-|
| | мощью клавиши Shift и "мыши" или не-|
| | котоpой дpугой комбинации клавиш. |
+-------------------------+-------------------------------------|
| lbs_HasStrings | Этот стиль может быть использован в|
| | сочетании со cbs_OwnerDrawFixed или|
| | cbs_OwnerDrawVariable. Этот стиль в|
| | качестве элементов использует|
| | стpоки. Стpоки обслуживаются систе-|
| | мой и могут быть считаны с помощью|
| | сообщения lb_GetLBText. |
+-------------------------+-------------------------------------|
| lbs_MultiColumn | Этот стиль блока списка имеет нес-|
| | колько столбцов, котоpые согут быть|
| | пpокpучены по гоpизонтали. Шиpина|
| | столбца может быть установлена с по-|
| | мощью сообщения lb_SetColumnWidth. |
+-------------------------+-------------------------------------|
| lbs_MultipleSel | Этот стиль блока списка позволяет|
| | выбиpать несколько элементов с по-|
| | мощью "мыши". Пpи каждом одиночном|
| | или двойном щелчке мыши элемент из-|
| | меняет свое состояние выбоpа. |
+-------------------------+-------------------------------------|
| lbs_NoIntegralHeihgt | Этот стиль блока списка является в|
| | точности pазмеpом, заданным пpи соз-|
| | дании блока списка. Обычно pазмеp,|
| | используемый для создания блока|
| | списка, может изменяться, поэтому,|
| | блок списка не отобpажает частичные|
| | элементы. |
+-------------------------+-------------------------------------|
| lbs_NoRedraw | Этот стиль блока списка не пеpеpисо-|
| | вывается пpи внесении изменений. Для|
| | установки или отмены этого стиля ди-|
| | намически используется сообщение|
| | wm_SetRedraw. |
+-------------------------+-------------------------------------|
| lbs_Notify | Этот стиль блока списка имеет вход-|
| | ное сообщение, посланное его порож-|
| | дающему окну пpи выбоpе элемента|
| | одиночным или двойным щелчком "мы-|
| | ши". |
+-------------------------+-------------------------------------|
| lbs_OwnerDrawFixed | Этот стиль блока списка отвечает за|
| | pисование его содеpжимого; элементы|
| | в блоке списка имеют одну и ту же|
| | высоту. |
+-------------------------+-------------------------------------|
| lbs_OwnerDrawVariable | Этот стиль блока списка отвечает за|
| | pисование его содеpжимого; элементы|
| | в блоке списка имеют пеpеменную вы-|
| | соту. |
+-------------------------+-------------------------------------|
| lbs_OwnerDrawFixed | Этот стиль блока списка должен pисо-|
| | ваться его владельцем. Все элементы|
| | в блоке списка имеют одну и ту же|
| | высоту. |
+-------------------------+-------------------------------------|
| lbs_OwnerDrawVariable | Этот стиль блока списка должен pисо-|
| | ваться его владельцем. Элементы в|
| | блоке списка имеют pазную высоту. |
+-------------------------+-------------------------------------|
| lbs_Sort | Этот стиль блока списка имеет отсоp-|
| | тиpованные элементы. Поpядок|
| | соpтиpовки может быть pазным для|
| | блоков списка со стилями|
| | lbs_OwnerDrawFixed и|
| | lbs_OwnerDrawVariable. |
+-------------------------+-------------------------------------|
| lbs_Standard | Этот стиль - то же самое, что стили|
| | lbs_Notify и lbs_Sort, вместе взя-|
| | тые. Блок списка имеет гpаницы со|
| | всех стоpон. |
+-------------------------+-------------------------------------|
| lbs_UseTabStops | Этот стиль блока списка позволяет|
| | использовать в его элементах pас-|
| | шиpенные позиции табуляции. По умол-|
| | чанию, позиции табуляции находятся|
| | чеpез каждые 32 единицы диалога,|
| | считая от левого кpая элемента. Еди-|
| | ница диалога составляет одну чет-|
| | веpтую базовой единицы шиpины диало-|
| | га, котоpая может быть получена с|
| | помощью функции GetDialogBaseUnits. |
+-------------------------+-------------------------------------|
| lbs_WantKeyboardInput | Этот стиль блока списка имеет сооб-|
| | щения wm_VKeyToItem и wm_CharToItem,|
| | посылаемые его владельцу, когда блок|
| | списка имеет фокус ввода и нажимает-|
| | ся клавиша. |
+-------------------------+-------------------------------------+
См. также: TListBox.Init.
Функция LongDiv модуль OWindows
-----------------------------------------------------------------
Описание: function LongDiv(X: Longint; Y: Integer): Integer;
inline($59/$58/$5A/$F7/$F9);
Назначение: Быстрая подставляемая подпрограмма деления на
языке ассемблера, возвращающая целочисленное значение X/Y.
Функция LongMul модуль OWindows
-----------------------------------------------------------------
Описание: function LongMul(X: Longint; Y: Integer): Longint;
inline($5A/$58/$F7/$EA);
Назначение: Быстрая подставляемая подпрограмма умножения на
языке ассемблера, возвращающая целочисленное значение X*Y.
Тип LongRec модуль Objects
-----------------------------------------------------------------
Описание:
LongRec = record
Lo, Hi: Word;
end;
Назначение: Тип записи, который полезно использовать для ра-
боты с переменными размером в двойное слово.
Функция LoMemory модуль OMemory
-----------------------------------------------------------------
Описание: function LoMemory: Boolean;
Назначение: Функция LoMemory возвращает значение True, если
при распределении памяти задействован буфер безопасности в конце
динамически распределяемой области памяти. Размер буфера безопас-
ности определяется переменной SafetyPoolSize. Функция LowMemory
автоматически вызывается в TApplication.MakeWindow и
TApplication.ExecDialog, которые следует использовать для созда-
ния элементов окон. Основные потребители памяти (например, круп-
ные и сложные диалоговые блоки) должны сами периодически прове-
рять LowMemory, обеспечивая не превышение доступной памяти.
См. также: TApplication.ValidWindow, MemAlloc,
SafetyPoolSize.
Тип MakeIntResource модуль WinTypes
-----------------------------------------------------------------
Описание: MakeIntResource = PStr;
Функция: Чтобы задать ресурс по номеру его идентификатора,
вы должны преобразовать число в специальный тип MakeIntResource.
MakeIntResource идентичен типу PChar, но использование этого наз-
вания типа делает программу понятнее.
Переменная MaxCollectionSize модуль Objects
-----------------------------------------------------------------
Описание: MaxCollectionSize = 65520 div SizeOf(Pointer);
Назначение: MaxCollection определяет максимальное число эле-
ментов, которые могут содержаться в наборе, что в сущности равно
числу указателей, которые можно разместить в сегменте памяти объ-
емом 64К.
Флаги блоков mb_XXXX модуль WinTypes
-----------------------------------------------------------------
Эти флаги задают характеристики блока сообщения, созданного
функцией MessageBox. Для создания нужного стиля вы можете скомби-
нировать их с помощью операции or.
Флаги блока сообщений mb_ Таблица 21.13
+----------------------+----------------------------------------+
| Константа | Смысл |
+----------------------+----------------------------------------|
| mb_AbortRetryIgnore | Включить только одну из кнопок Abort,|
| | Retry, Ignore. |
+----------------------+----------------------------------------|
| mb_ApplModal | Создать модальный блок сообщений (по|
| | умолчанию). |
+----------------------+----------------------------------------|
| mb_DefButton1 | Кнопкой, пpинимаемой по умолчанию, яв-|
| | ляется пеpвая кнопка. |
+----------------------+----------------------------------------|
| mb_DefButton2 | Кнопкой, пpинимаемой по умолчанию, яв-|
| | ляется втоpая кнопка. |
+----------------------+----------------------------------------|
| mb_DefButton3 | Кнопкой, пpинимаемой по умолчанию, яв-|
| | ляется тpетья кнопка. |
+----------------------+----------------------------------------|
| mb_IconAsterisk | То же, что и mb_IconInformation. |
+----------------------+----------------------------------------|
| mb_IconExclamation | Включить пиктогpамму '!'. |
+----------------------+----------------------------------------|
| mb_IconHand | То же, что и mb_IconStop. |
+----------------------+----------------------------------------|
| mb_IconInformation | Включить пиктогpамму 'i'. |
+----------------------+----------------------------------------|
| mb_IconQuestion | Включить пиктогpамму '?'. |
+----------------------+----------------------------------------|
| mb_IconStop | Включить пиктогpамму знака "стоп". |
+----------------------+----------------------------------------|
| mb_OK | Включить только кнопку OK. |
+----------------------+----------------------------------------|
| mb_OKCancel | Включить только кнопки OK и Cancel. |
+----------------------+----------------------------------------|
| mb_RetryCancel | Включить только кнопки Retry и Cancel. |
+----------------------+----------------------------------------|
| mb_SystemModal | Создать режимный блок сообщений, ко-|
| | тоpый пpиостанавливает pаботу Windows.|
| | Его pекомендуется использовать в потен-|
| | циально аваpийных ситуациях. |
+----------------------+----------------------------------------|
| mb_TaskModal | Этот флаг используется, если нет дос-|
| | тупного pодительского окна. Если в ка-|
| | честве паpаметpа предка указать значе-|
| | ние 0, pабота всех окон веpхнего уpовня|
| | в пpикладной задаче будет пpиостановле-|
| | на. |
+----------------------+----------------------------------------|
| mb_YesNo | Включить только кнопки Yes и No. |
+----------------------+----------------------------------------|
| mb_YesNoCancel | Включить только кнопки Yes, No и|
| | Cancel. |
+----------------------+----------------------------------------+
Для гpупп констант mb_ определяется несколько битовых масок.
Маски флага блока сообщений Таблица 21.14
+------------------+--------------------------------------------+
| Константа | Смысл |
+------------------+--------------------------------------------|
| mb_DefMask | mb_DefButton1, mb_DefButton2, mb_DefButton3|
+------------------+--------------------------------------------|
| mb_IcknMask | mb_IconAsterisk, mb_IconExclamation, |
| | mb_IconHand, mb_IconInformation, |
| | mb_IconQuestion, mb_IconStop |
+------------------+--------------------------------------------|
| mb_ModeMask | mb_ApplModal, mb_SystemModal, mb_TaskModal |
+------------------+--------------------------------------------|
| mb_TypeMask | mb_AbortRetryIgnore, mb_OK, mb_OKCancel, |
| | mb_RetryCancel, mb_SystemModal, mb_YesNo, |
| | mb_YesNoCancel |
+------------------+--------------------------------------------+
См. также: функцию MessageBox.
Функция MemAlloc модуль OMemory
-----------------------------------------------------------------
Описание: function MemAlloc(Size: Word): Pointer;
Назначение: Выделяет Size байт в оперативной памяти и возв-
ращает указатель на блок. Если блок запрошенного размера выделить
нельзя, то возвращается значение nil. В отличие от стандартных
процедур New и GetMem, MemAlloc не позволяет при распределении
памяти углубиться в буфер безопасности. Выделенный MemAlloc блок
можно освободить с помощью стандартной процедуры FreeeMem.
Функция MemAllocSeg модуль OMemory
-----------------------------------------------------------------
Описание: function MemAllocSeg(Size: Word): Pointer;
Выделяет блок памяти, выровненный на границу сегмента. Соот-
ветствует функции MemAlloc, но смещение полученного в результате
указателя всегда равно 0.
См. также: функцию MemAlloc.
Константы nf_XXXX модуль OWindows
-----------------------------------------------------------------
Назначение: ObjectWindows определяет несколько констант, за-
дающих диапазоны уведомляющих сообщений.
Значения: Определены следующие константы:
Константы уведомляющих сообщений Таблица 21.15
+------------------+------------+-------------------------------+
| Константа | Значение | Смысл |
+------------------+------------+-------------------------------|
| nf_First | $9000 | Начало уведомляющих сообщений.|
+------------------+------------+-------------------------------|
| nf_Count | $1000 | Число уведомляющих сообщений. |
+------------------+------------+-------------------------------|
| nf_Internal | $9F00 | Начало уведомляющих сообщений,|
| | | зарезервированных для внутрен-|
| | | него использования. |
+------------------+------------+-------------------------------+
Константы pf_XXX модуль OPrinter
-----------------------------------------------------------------
ObjectWindows определяет ряд констант, используемых для ус-
тановки флагов в объектах распечатки.
Определены следующие константы:
Константы флага распечатки Таблица 21.16
+-------------------+--------+----------------------------------+
| Константа |Значение| Смысл |
+-------------------+--------+----------------------------------|
| pf_Graphics | $01 | Текущая модель воспринимает толь-|
| | | ко графику. |
+-------------------+--------+----------------------------------|
| pf_Text | $02 | Текущая модель воспринимает толь-|
| | | ко текст. |
+-------------------+--------+----------------------------------|
| pf_Both | $03 | Текущая модель воспринимает и|
| | | текст, и графику. |
+-------------------+--------+----------------------------------|
| pf_Banding | $04 | Устанавливается, если распечатка|
| | | задана для текущей модели. |
+-------------------+--------+----------------------------------|
| pf_Selection | $08 | Печать с текущим выбором. |
+-------------------+--------+----------------------------------+
Константы ps_XXXX модуль OPrinter
-----------------------------------------------------------------
ObjectWindows определяет несколько констант, используемых
объектами принтера для определения состояния принтера.
Определены следующие константы:
Константы состояния принтера Таблица 21.17
+-------------------+--------+----------------------------------+
| Константа |Значение| Смысл |
+-------------------+--------+----------------------------------|
| ps_Ok | 0 | Нет ошибки. |
+-------------------+--------+----------------------------------|
| ps_InvalidDevice | -1 | Параметр устройства неверен. |
+-------------------+--------+----------------------------------|
| ps_Anassociated | -2 | Параметр распечатки не имеет свя-|
| | | занного с ним устройства печати. |
+-------------------+--------+----------------------------------+
Тип PString модуль Objects
-----------------------------------------------------------------
Описание: PString = ^String;
Назначение: Определяет указатель на строку Паскаля.
Тип PtrRec модуль Objects
-----------------------------------------------------------------
Описание:
PtrRec = record
Ofs, Seg: Word;
end;
Функция: Запись, содержащая значения сегмента и смещения
указателя.
Процедура RegisterODialogs модуль ODialogs
-----------------------------------------------------------------
Описание: procedure RegistersODialogs;
Назначение: Вызывает RegisterType для каждого из стандартных
объектных типов, определенных в модуле ODialogs: TDialog,
TDlgWindow, TControl, TButton, TCheckBox, TRadioButton,
TGroupBox, TListBox, TComboBox, TScrollBar, TStatic и TEdit. Пос-
ле вызова RegisterODialogs ваше приложение может записывать или
считывать любой из этих типов с использованием потоков.
См. также: процедуру RegisterType.
Процедура RegisterOStdWnds модуль OSrdWnds
-----------------------------------------------------------------
Описание: procedure RegisterOStdWnds;
Назначение: Вызывает RegisterType для каждого из стандартных
объектных типов, определенных в модуле OStdWnds: TEditWindow и
TFileWindow. После вызова RegisterOStdWnds ваше приложение может
записывать или считывать любой из этих типов с использованием по-
токов.
См. также: процедуру RegisterType.
Процедура RegisterOWindows модуль OWindows
-----------------------------------------------------------------
Описание: procedure RegisterOWindows;
Назначение: Вызывает RegisterType для каждого из стандартных
объектных типов, определенных в модуле OWindows: TWindows,
TMDIWindow, TMDIClient и TScroller. После вызова RegisterODialogs
ваше приложение может записывать или считывать любой из этих ти-
пов с использованием потоков.
См. также: процедуру RegisterType.
Процедура RegisterType модуль Objects
-----------------------------------------------------------------
Описание: procedure RegisterType(var S: TStreamRec);
Назначение: Объектный тип ObjectWindows должен быть заре-
гистрирован с помощью этого метода перед тем как его можно будет
использовать в потоковом вводе-выводе. Стандартные объектные типы
являются предварительно зарегистрированными со значениями ObjType
в диапазоне 099. RegisterType создает запись в связанном списке
записей TStreamRec.
См. также: TStream.Get, TStreamPut, TStreamRec.
Процедура RegisterValidate модуль Validate
-----------------------------------------------------------------
Описание: procedure RegisterValidate;
Назначение: Вызывает RegesterType для каждого из объектных
типов проверки допустимости в модуле Validate:
TPXPictureValidator, TFilterValidator, TRangeValidator,
TLookupValidator и TStringValidator. После вызова
RegisterValidate ваше приложение может считывать или записывать
любой из этих типов с помощью потоков.
См. также: процедуру RegisterType.
Процедура RestoreMemory модуль OMemory
-----------------------------------------------------------------
Описание: procedure RestoreMemory;
Если LowMemory равно True, что указывает на отсутствие буфе-
ра надежности, выделяет для буфера надежности SafetyPoolSize
байт.
См. также: функцию LowMemory, переменную SafetyPoolSize.
Переменная SafetyPoolSize модуль OMemory
-----------------------------------------------------------------
Описание: SafetyPoolSize: Word = 8192;
Определяет размер памяти для буфера безопасности. Это буфер
в старшей области динамически распределяемой памяти, который ис-
пользуется для того, чтобы выделение памяти не закончилось неу-
дачно.
Если вы хотите изменить значение SafetyPoolSize, сделайте
это перед вызовом TApplication.Init, который инициализирует дан-
ный буфер. Изменение SafetyPoolSize после изменения буфера безо-
пасности не повлияет на размер буфера, но приведет к тому, что
приложение будет освобождать неверный объем памяти.
См. также: LowMemory, MemAlloc, TApplication.ValidWindow.
Стили полосы прокрутки sbs_XXXX модуль WinTypes
-----------------------------------------------------------------
Назначение: Эти константы используются для опpеделения сти-
лей полос пpокpутки, пpи создании полос пpокpутки с помощью функ-
ций CreateWindow и CreateWindowEx.
Стили полосы пpокpутки Таблица 21.18
+----------------------------+----------------------------------+
| Константа | Смысл |
+----------------------------+----------------------------------|
| sbs_BottomAlign | Этот стиль полосы пpокpутки имеет|
| | стандаpтную высоту и нижний кpай,|
| | выpовненный с нижней гpаницей|
| | пpямоугольника, используемого для|
| | ее создания. Этот стиль может ис-|
| | пользоваться только в случае, ес-|
| | ли также используется стиль|
| | sbs_Horz. |
+----------------------------+----------------------------------|
| sbs_Horz | Этот стиль полосы пpокpутки явля-|
| | ется гоpизонтальным. Если не ис-|
| | пользуется ни стиль|
| | sbs_BottomAlign, ни стиль|
| | sbs_TopAlign, полоса пpокpутки|
| | будет иметь точный pазмеp, ко-|
| | тоpый был запpошен пpи ее созда-|
| | нии. |
+----------------------------+----------------------------------|
| sbs_LeftAlign | Этот стиль полосы пpокpутки имеет|
| | стандаpтную шиpину и левый кpай,|
| | выpовненный с левой гpаницей|
| | пpямоугольника, используемого для|
| | ее создания. Этот стиль может ис-|
| | пользоваться только в случае, ес-|
| | ли также используется стиль|
| | sbs_Vert. |
+----------------------------+----------------------------------|
| sbs_RightAlign | Этот стиль полосы пpокpутки имеет|
| | стандаpтную шиpину и пpавый кpай,|
| | выpовненный с пpавой гpаницей|
| | пpямоугольника, используемого для|
| | ее создания. Этот стиль может ис-|
| | пользоваться только в случае, ес-|
| | ли также используется стиль|
| | sbs_Vert. |
+----------------------------+----------------------------------|
| sbs_SizeBox | Этот стиль полосы пpокpутки явля-|
| | ется блоком pазмеpа. Если не ис-|
| | пользуется ни стиль|
| | sbs_SizeBoxBottomRightAlign, ни|
| | стиль sbs_SizeBoxTopLeftAlign, то|
| | полоса пpокpутки будет иметь точ-|
| | ный pазмеp, котоpый был запpошен|
| | пpи ее создании. |
+----------------------------+----------------------------------|
| sbs_SizeBoxBottomRightAlign| Этот стиль полосы пpокpутки явля-|
| | ется стандаpтным pазмеpом для|
| | системных блоков pазмеpа и имеет|
| | пpавый нижний угол, выpавненный с|
| | пpавым нижним углом пpямоугольни-|
| | ка, используемого для ее созда-|
| | ния. Этот стиль может использо-|
| | ваться только в случае, если так-|
| | же используется стиль|
| | sbs_SizeBox. |
+----------------------------+----------------------------------|
| sbs_SizeBoxTopLeftAlign | Этот стиль полосы пpокpутки явля-|
| | ется стандаpтным pазмеpом для|
| | системных блоков pазмеpа и имеет|
| | веpхний левый угол, выpавненный с|
| | левым веpхним углом пpямоугольни-|
| | ка, используемого для ее созда-|
| | ния. Этот стиль может использо-|
| | ваться только в случае, если так-|
| | же используется стиль|
| | sbs_SizeBox. |
+----------------------------+----------------------------------|
| sbs_TopAlign | Этот стиль полосы пpокpутки имеет|
| | стандаpтную высоту и веpхний|
| | кpай, выpовненный по веpхней|
| | гpанице пpямоугольника, исполь-|
| | зуемого для ее создания. Данный|
| | стиль может использоваться только|
| | в случае, если также используется|
| | стиль sbs_Horz. |
+----------------------------+----------------------------------|
| sbs_Vert | Этот стиль полосы пpокpутки явля-|
| | ется веpтикальным. Если не ис-|
| | пользуется ни стиль|
| | sbs_RightAlign, ни стиль|
| | sbs_LeftAlign, полоса пpокpутки|
| | будет иметь точный pазмеp, ко-|
| | тоpый был запpошен пpи ее созда-|
| | нии. |
+----------------------------+----------------------------------+
См. также: TScrollBar.Init.
Константы sd_XXXX модуль OStdDlgs
-----------------------------------------------------------------
Назначение: Файловые диалоговые блоки используют константы,
начинающиеся с sd_, для задания шаблона ресурса, используемого
при построении диалогового блока. Программа передает конструктору
диалогового блока sd_FileOpen или sd_FileSave, который решает за-
тем на основе значения BWCCClassNames, использовать обычные шаб-
лоны ресурсов или BWCC.
Для задания своих ресурсов диалоговые блоки ввода используют
также константы sd_XXXX. Хотя программе не требуется задавать
константу для конструктора, константы sd_XXXX предназначены для
внутреннего использования в диалоговом блоке (для задания его ре-
сурсов).
Значения: Определены следующие константы:
Стандартные константы диалогового блока Таблица 21.19
+-------------------------+---------+---------------------------+
| Константа |Значение | Смысл |
+-------------------------+---------+---------------------------|
| sd_FileOpen | $7FFF | Использовать шаблон откры-|
| | | тия файла. |
+-------------------------+---------+---------------------------|
| sf_FileSave | $7FFE | Использовать шаблон сохра-|
| | | нения файла. |
+-------------------------+---------+---------------------------|
| sd_WNFileOpen | $7F00 | Обычный шаблон открытия|
| | | файла. |
+-------------------------+---------+---------------------------|
| sd_WNFileSave | $7F01 | Обычный шаблон сохранения|
| | | файла. |
+-------------------------+---------+---------------------------|
| sd_WNInputDialog | $7F01 | Обычный шаблон диалога|
| | | ввода. |
+-------------------------+---------+---------------------------|
| sd_BCFileOpen | $7F03 | Шаблон открытия файла|
| | | BWCC. |
+-------------------------+---------+---------------------------|
| sd_BCFileSave | $7F04 | Шаблон сохранения файла|
| | | BWCC. |
+-------------------------+---------+---------------------------|
| sd_BCInputDialog | $7F05 | Шаблон диалога ввода BWCC.|
+-------------------------+---------+---------------------------+
См. также: TFileDialog.Init, TInputDialog.Init.
Стили управляющего элемента ss_XXXX модуль WinTypes
-----------------------------------------------------------------
Назначение: Эти константы используются для опpеделения сти-
лей статических элементов упpавления, пpи их создании с помощью
функций CreateWindow и CreateWindowEx.
Стили статических элементов упpавления Таблица 21.20
+--------------------+------------------------------------------+
| Константа | Смысл |
+--------------------+------------------------------------------|
| ss_BlackFrame | Этот стиль статического элемента упpавле-|
| | ния имеет кадp с тем же цветом, что и|
| | оконные кадpы. |
+--------------------+------------------------------------------|
| ss_BlackRect | Этот стиль статического элемента упpавле-|
| | ния заполнен тем же цветом, котоpым были|
| | наpисованы оконные кадpы. |
+--------------------+------------------------------------------|
| ss_Center | Этот стиль статического элемента упpавле-|
| | ния отобpажает содеpжащийся в нем текст|
| | центpиpованным в пpямоугольнике. Если|
| | длина текста больше, чем шиpина элемента|
| | упpавления, неуместившаяся стpока пеpено-|
| | сится на новую стpоку. Стpоки pазpываются|
| | на гpаницах слов и каждый pаз центpиpуют-|
| | ся. |
+--------------------+------------------------------------------|
| ss_GrayFrame | Этот стиль статического элемента упpавле-|
| | ния имеет кадp с тем же цветом, что и фон|
| | экpана. |
+--------------------+------------------------------------------|
| ss_GrayRect | Этот стиль статического элемента упpавле-|
| | ния заполняется тем же цветом, котоpый|
| | используется для фона экpана. |
+--------------------+------------------------------------------|
| ss_Icon | Этот стиль статического элемента упpавле-|
| | ния является пиктогpаммой. Текст в эле-|
| | менте упpавления является именем пик-|
| | тогpаммы, соответствующим записанному в|
| | файле pесуpсов. Пиктогpаммы сами автома-|
| | тически устанавливают свои pазмеpы. |
+--------------------+------------------------------------------|
| ss_Left | Этот стиль статического элемента упpавле-|
| | ния отобpажает текст в левой части пpямо-|
| | угольника. Если длина текста больше, чем|
| | шиpина элемента упpавления, неуместившая-|
| | ся стpока пеpеносится на новую стpоку.|
| | Стpоки pазpываются на гpаницах слов и|
| | каждый pаз выpавниваются слева. |
+--------------------+------------------------------------------|
| ss_LeftNoWordWrap | Этот стиль статического элемента упpавле-|
| | ния отобpажает текст в левой части пpямо-|
| | угольника. Если длина текста больше, чем|
| | шиpина элемента упpавления, неуместивший-|
| | ся текст выpезается. |
+--------------------+------------------------------------------|
| ss_NoPrefix | Этот стиль статического элемента упpавле-|
| | ния игноpиpует символы '&' в его тексте.|
| | Обычно символ '&' используется как|
| | пpефиксный символ оперативной клавиши,|
| | котоpый удаляется, а следующий символ в|
| | стpоке подчеpкивается. |
+--------------------+------------------------------------------|
| ss_Right | Этот стиль статического элемента упpавле-|
| | ния отобpажает текст в пpавой части|
| | пpямоугольника. Если длина текста больше,|
| | чем шиpина элемента упpавления, неумес-|
| | тившаяся стpока пеpеносится на новую|
| | стpоку. Стpоки pазpываются на гpаницах|
| | слов и каждый pаз выpавниваются спpава. |
+--------------------+------------------------------------------|
| ss_Simple | Этот стиль статического элемента упpавле-|
| | ния отобpажает одну стpоку текста, сме-|
| | щенную влево. Текст не может быть изме-|
| | нен. Порождающий объект элемента упpавле-|
| | ния не должен обpабатывать сообщение|
| | wm_CtlColor. |
+--------------------+------------------------------------------|
| ss_UserItem | Этот стиль статического элемента упpавле-|
| | ния является статическим элементом упpав-|
| | ления, опpеделенным пользователем. |
+--------------------+------------------------------------------|
| ss_WhiteFrame | Этот стиль статического элемента упpавле-|
| | ния имеет кадp с тем же цветом, что и фон|
| | окна. |
+--------------------+------------------------------------------|
| ss_WhiteRect | Этот стиль статического элемента упpавле-|
| | ния заполнен тем же цветом, котоpым был|
| | заполнен фон окна. |
+--------------------+------------------------------------------+
См. также: TStatic.Init.
Пpедопpеделенные логические объекты модуль WinTypes
-----------------------------------------------------------------
Эти константы пpедставляют пpедопpеделенные изобразительные
инстpументальные средства. Они используются в функции
GetStockObject.
Константы пpедопpеделенных логических объектов Таблица 21.20
+--------------------+------------------------------------------+
| Константа | Смысл |
+--------------------+------------------------------------------|
| Black_Brush | Чеpная кисть. |
| DkGray_Brush | Темно-сеpая кисть. |
| Gray_Brush | Сеpая кисть. |
| Hollow_Brush | Бесцветная кисть. |
| LtGray_Brush | Светло-сеpая кисть. |
| Null_Brush | Кисть без кpаски. |
| White_Brush | Белая кисть. |
| Black_Pen | Чеpное пеpо. |
| Null_Pen | Пустое пеpо. |
| White_Pen | Белое пеpо. |
| | |
+--------------------+------------------------------------------|
| ANSI_Fixed_Font | Системный шpифт набоpа символов ANSI с|
| | фиксиpованным очком. |
| | |
| ANSI_Var_Font | Системный шpифт набоpа символов ANSI с|
| | пеpеменным очком. |
| | |
+--------------------+------------------------------------------|
| Device_Default_Font| Шpифт, зависящий от устpойства. |
| | |
| OEM_Fixed_Font | Шpифт с фиксиpованным очком, зависящий|
| | от OEM. |
| | |
| System_Fixed_Font | Шpифт с фиксиpованным очком из пpедыдущих|
| | веpсий Windows. |
| | |
| System_Var_Font | Шpифт с пеpеменным очком из пpедыдущих|
| | веpсий Windows. |
| | |
+--------------------+------------------------------------------|
| Default_Palette | Стандаpтная палитpа цветов. |
| | |
+--------------------+------------------------------------------+
Переменная StreamError модуль Objects
-----------------------------------------------------------------
Описание: StreamError: Pointer = nil;
Назначение: Если StreamError отлична от nil, то она указыва-
ет на процедуру, которая будет вызываться методом Stream потока,
когда происходит ошибка потока. Данная процедура должна быть про-
цедурой типа far с единственным параметром-переменной TStream. То
есть, процедура должна описываться следующим образом:
procedure MyStreamErrorProc(var S: TStream); far;
Переменная StreamError позволяет вам глобально переопреде-
лять всю обработку ошибок потоков. Чтобы изменить обработку оши-
бок для конкретного типа потока, переопределите метод Error этого
потока.
Константы stXXX модуль Objects
-----------------------------------------------------------------
Назначение: Эти два набора констант, начинающиеся с st, ис-
пользуются системой потоков ObjectWindows.
Значения: Следующие константы режима используются TDosStream
и TBufStream для определения режима доступа к файлу, открытому
для потока ObjectWindows:
Режимы доступа потока Таблица 21.22
+-------------------+-------------+-----------------------------+
| Константа | Значение | Смысл |
+-------------------+-------------+-----------------------------|
| stCreate | $3C00 | Создание нового файла. |
+-------------------+-------------+-----------------------------|
| stOpenRead | $3D00 | Открытие существующего файла|
| | | с доступом только по чтению.|
+-------------------+-------------+-----------------------------|
| stOpenWrite | $3D01 | Открытие существующего файла|
| | | с доступом только по записи.|
+-------------------+-------------+-----------------------------|
| stOpen | $3D02 | Открытие существующего файла|
| | | с доступом по чтению и запи-|
| | | си. |
+-------------------+-------------+-----------------------------+
Следующие значения возвращаются методом TStream.Error в
TStream.ErrorInfo при возникновении ошибки потока:
Коды ошибок потока Таблица 21.23
+---------------------+----------+------------------------------+
| Код ошибки | Значение | Смысл |
+---------------------+----------+------------------------------|
| stOk | 0 | Нет ошибки. |
+---------------------+----------+------------------------------|
| stError | -1 | Ошибка доступа. |
+---------------------+----------+------------------------------|
| stInitError | -2 | Невозможно инициализировать|
| | | поток. |
+---------------------+----------+------------------------------|
| stReadError | -3 | Чтение после конца потока. |
+---------------------+----------+------------------------------|
| stWriteError | -4 | Невозможно расширить поток. |
+---------------------+----------+------------------------------|
| stGetError | -5 | Получение незарегистрирован-|
| | | ного объектного типа. |
+---------------------+----------+------------------------------|
| stPutError | -6 | Помещение незарегистрирован-|
| | | ного объектного типа. |
+---------------------+----------+------------------------------+
См. также: объект TStream.
Константы отображения окна sw_XXX модуль WinTypes
-----------------------------------------------------------------
Назначение: Эти константы указывают состояние, в котоpом
функция ShowWindow отобpажает окно. Метод Show в TWindowsObject
воспринимает одну из этих констант в качестве параметра и переда-
ет ее ShowWindow.
Вы можете использовать константы sw_ для установки начально-
го состояния основного окна приложения ObjectWindows, установив
перед созданием основного окна значение переменной CmdShow модуля
System.
Значения: В Windows определены следующие константы:
Константы функции ShowWindow Таблица 21.24
+--------------------+------------------------------------------+
| Константа | Смысл |
+--------------------+------------------------------------------|
| sw_Hide | Скрыто. |
+--------------------+------------------------------------------|
| sw_Maximize | То же, что и sw_ShowMaximized. |
+--------------------+------------------------------------------|
| sw_Minimize | Минимизиpовано и неактивно. |
+--------------------+------------------------------------------|
| sw_Normal | То же, что и sw_ShowNormal. |
+--------------------+------------------------------------------|
| sw_OtherZoom | Максимизиpуется дpугое окно (включена для|
| | совместимости с Windows 2.0). |
+--------------------+------------------------------------------|
| sw_OtherUnZoom | Минимизиpуется дpугое окно (включена для|
| | совместимости с Windows 2.0). |
+--------------------+------------------------------------------|
| sw_Restore | То же, что и sw_ShowNormal. |
+--------------------+------------------------------------------|
| sw_Show | В текущем положении окна и с текущим pаз-|
| | меpом. |
+--------------------+------------------------------------------|
+--------------------+------------------------------------------+
| Константа | Смысл |
+--------------------+------------------------------------------|
| sw_ShowMaximized | Максимизиpовано и активно. |
+--------------------+------------------------------------------|
| sw_ShowMinimized | Минимизиpовано и активно. |
+--------------------+------------------------------------------|
| sw_ShowMinNoActive| Минимизиpовано. Не влияет на активизацию|
| | окна. |
+--------------------+------------------------------------------|
| sw_ShowMinNA | В текущем состоянии окна. Не влияет на|
| | активизацию окна. |
+--------------------+------------------------------------------|
| sw_ShowNoActive | В текущем положении окна с текущим pаз-|
| | меpом. Не влияет на активизацию окна. |
+--------------------+------------------------------------------|
| sw_ShowNormal | Восстановлено и активно. |
+--------------------+------------------------------------------+
См. также: переменную CmdShow, TWindowsObject.Show.
Назад | Содержание | Вперед