------------------------------------------------------------------------
B.Pascal 7 & Objects/OW - 1 -
Введение.......................................................25
Что такое ObjectWindows?.......................................25
Для чего предназначена ObjectWindows?..........................26
Что нужно знать................................................26
Как работать с данным руководством.............................27
О чем рассказывается в данном руководстве......................27
Часть 1. Изучение ObjectWindows................................28
Глава 1. Знакомство с Windows..................................28
Шаг 1: Создание базового приложения............................28
Требования к приложению........................................29
Определение типа приложения....................................30
Инициализация основного окна...................................30
Объект основного окна..........................................32
Что такое объект окна?.........................................32
Описатели......................................................33
Порождающие и дочерние окна....................................33
Создание нового типа окна......................................33
Реакция на сообщения...........................................34
Завершение прикладной программы................................36
Переопределение CanClose.......................................37
Дальнейшее изменение закрытия..................................38
Глава 2. Заполнение окна.......................................41
Шаг 2: Отображение текста в окне...............................41
Вывод в контексте дисплея......................................41
Что такое контекст дисплея?....................................42
Получение контекста дисплея....................................42
Использование контекста дисплея................................43
Освобождение контекста дисплея.................................43
Координаты Windows.............................................44
Параметры сообщений............................................44
Очистка окна...................................................45
Шаг 3: Изображение линий в окне................................47
Буксировка линии...............................................48
Сообщения wm_MouseMove.........................................48
Реакция на сообщения буксировки................................49
Изображение точек и линий......................................50
Перехват "мыши"................................................50
Изменение размера пера.........................................51
Отслеживание размера пера......................................51
Получение пера нового размера..................................52
Глава 3. Меню и диалоговые ресурсы.............................56
Шаг 4: Добавление строки меню..................................56
Ресурсы меню...................................................57
Загрузка ресурса меню..........................................60
Перехват сообщений меню........................................61
Определение методов реакции на команду.........................62
Связывание клавиш с командами..................................62
Реакция на команды меню........................................63
Добавление диалогового блока...................................64
Добавление поля объекта........................................66
Шаг 5: Добавление диалогового блока............................68
Создание ресурсов диалогового блока............................69
Идентификаторы управляющих элементов...........................69
B.Pascal 7 & Objects/OW - 2 -
Построение объекта диалогового блока...........................70
Выполнение диалогового блока...................................70
Режимные и безрежимные диалоговые блоки........................72
Глава 4. Работа с диалоговым блоком............................73
Шаг 6: Изменение атрибутов пера................................73
Создание объекта пера..........................................74
Создание сложного диалогового блока............................76
Управляющие объекты............................................77
Использование интерфейсных объектов............................78
Конструктор InitResource.......................................79
Создание буфера передачи.......................................79
Передача данных................................................81
Чтение возвращаемых значений...................................81
Вызов диалогового блока пера...................................82
Глава 5. Повторное отображение графики.........................83
Шаг 7: Вывод на экран графики..................................83
Изображение и рисование........................................83
Сохранение графики в объектах..................................84
Добавление поля объекта........................................85
Определение объекта линии......................................85
Изменение методов работы с "мышью".............................87
Вывод сохраненной графики......................................88
Шаг 8: Сохранение рисунка в файле..............................89
Отслеживание состояния.........................................89
Сохранение и загрузка файлов...................................91
Шаг 9: Печать графического образа..............................94
Построение объекта принтера....................................94
Создание объекта распечатки....................................95
Запись в контекст устройства...................................95
Создание распечатки окна.......................................95
Вывод распечатки...............................................96
Выбор другого принтера.........................................96
Глава 6. Вывод всплывающего окна...............................98
Шаг 10: Добавление всплывающего окна...........................98
Добавление к окну дочернего окна...............................99
Построение окна палитры.......................................100
Назначение порождающего окна..................................100
Создание элементов экрана.....................................102
Вывод и сокрытие палитры......................................103
Шаг 11: добавление специализированных управляющих элементов...103
Добавление к палитре командных кнопок.........................104
Объекты управляющих элементов как поля........................105
Работа с управляющими элементами..............................105
Сокрытие вместо закрытия......................................106
Разрешение специализированных управляющих элементов...........107
Создание для командных кнопок графических изображений.........109
Нумерация ресурсов графических изображений....................109
Шаг 12: Создание специализированного управляющего элемента
окна.........................................................111
Динамическое изменение размеров палитры.......................111
Реакция на события управляющих элементов......................112
Имена методов реакции на сообщения управляющих элементов......112
Добавление "кнопок" палитры...................................114
B.Pascal 7 & Objects/OW - 3 -
Определение объекта палитры...................................114
Создание и уничтожение палитры................................116
Размещение в порождающем окне.................................117
Добавление и удаление перьев..................................118
Отображение содержимого палитры...............................120
Выбор перьев с помощью "мыши".................................121
Что дальше?...................................................121
Многодокументальный интерфейс.................................122
Сглаживание линий.............................................122
Отмена........................................................122
Поведение палитры.............................................123
Прокрутка.....................................................123
Часть 2. Использование ObjectWindows..........................124
Глава 7. Иерархия ObjectWindows...............................124
Соглашения Windows............................................124
Имена объектов................................................124
Имена методов.................................................124
Обзор объектов................................................125
Иерархия объектов.............................................125
Файлы ObjectWindows...........................................130
Файлы ресурсов................................................131
Файлы Windows 3.1.............................................131
Взаимодействие с Windows......................................132
Функции API Windows...........................................132
Вызов в ObjectWindows функций API.............................132
Доступ к функциям API.........................................133
Константы Windows.............................................133
Записи данных Windows.........................................133
Комбинирование констант стилей................................134
Типы функций Windows..........................................134
Функции системного вызова.....................................135
Глава 8. Объекты приложения...................................136
Минимальные требования........................................136
Поиск объекта приложения......................................136
Минимальное приложение........................................137
Методы Init, Run и Done.......................................137
Конструктор Init..............................................137
Метод Run.....................................................138
Деструктор Done...............................................138
Инициализация приложения......................................138
Инициализация основного окна..................................139
Специальный вывод основного окна..............................140
Инициализация первого экземпляра..............................140
Инициализация каждого экземпляра..............................142
Выполнение приложений.........................................143
Закрытие приложений...........................................143
Модификация поведения при закрытии............................143
Глава 9. Интерфейсные объекты.................................145
Для чего нужны интерфейсные объекты?..........................145
Что делают интерфейсные объекты?..............................145
Общий интерфейсный объект.....................................146
Создание интерфейсных объектов................................146
Допустимость описателя окна...................................147
B.Pascal 7 & Objects/OW - 4 -
Видимость на экране...........................................148
Уничтожение интерфейсных объектов.............................148
Связь порождающего и дочернего объектов.......................149
Список дочерних окон..........................................149
Построение дочерних окон......................................150
Создание дочерних элементов экрана............................150
Уничтожение дочерних окон.....................................150
Запрещение автоматического создания...........................151
Итерация дочерних окон........................................151
Поиск определенного дочернего окна............................151
Глава 10. Объекты окон........................................153
Что такое объекты окон?.......................................153
Окна, которые не являются окнами..............................153
Где найти объекты окон........................................154
Инициализация объектов окон...................................154
Установка атрибутов создания..................................155
Используемые по умолчанию атрибуты окна.......................156
Переопределение используемых по умолчанию атрибутов...........157
Атрибуты порожденного окна....................................157
Создание элементов окна.......................................158
Задание атрибутов регистрации.................................159
Классы окон...................................................160
Используемые по умолчанию атрибуты регистрации................162
Регистрация нового класса.....................................162
Изменение имени класса........................................163
Определение новых атрибутов регистрации.......................163
Использование специализированных окон.........................165
Использование окон редактирования.............................165
Использование файловых окон...................................167
Прокрутка содержимого окон....................................168
Что такое объект прокрутки?...................................169
Задание для окна объекта прокрутки............................171
Пример прокрутки..............................................171
Запрещение автоматической прокрутки...........................173
Отслеживание полос прокрутки..................................173
Модификация единиц прокрутки и диапазона......................174
Изменение позиции прокрутки...................................174
Установка размеров страницы...................................175
Оптимизация методов Paint для прокрутки.......................175
Глава 11. Объекты диалоговых блоков...........................177
Использование объектов диалоговых блоков......................177
Построение объекта............................................178
Вызов конструктора............................................178
Выполнение диалоговых блоков..................................178
Режимные и безрежимные диалоговые блоки.......................179
Выполнения режимных диалоговых блоков.........................179
Выполнение безрежимных диалоговых блоков......................180
Работа с безрежимными диалоговыми блоками.....................180
Завершение диалогов...........................................181
Работа с управляющими элементами..............................182
Взаимодействие с управляющим элементом........................182
Реакция на сообщения управляющих элементов....................183
Пример связи..................................................183
B.Pascal 7 & Objects/OW - 5 -
Ассоциирование объектов управляющих элементов.................184
Использование диалоговых окон.................................185
Использование предопределенных диалоговых окон................186
Использование диалоговых блоков ввода.........................186
Файловые диалоговые блоки.....................................188
Инициализация файлового диалогового блока.....................189
Выполнение файловых диалоговых блоков.........................189
Глава 12. Объекты управляющих элементов.......................191
Где можно использовать объекты управляющих элементов?.........191
Что такое объекты управляющих элементов?......................194
Построение и уничтожение объектов управляющих элементов.......194
Построение объекта управляющего элемента......................195
Вызов конструкторов объектов управляющих элементов............195
Присваивание полям объекта....................................195
Изменение атрибутов объекта управляющего элемента.............197
Инициализация управляющего элемента...........................197
Сохранение управляющих элементов..............................198
Уничтожение управляющих элементов.............................198
Связь с управляющими элементами...............................198
Работа с управляющими элементами окна.........................198
Реакция на управляющие элементы...............................199
Действие, аналогичное диалоговому блоку.......................199
Использование конкретных управляющих элементов................199
Использование блока списка....................................199
Построение объектов блока списка..............................200
Модификация блоков списка.....................................200
Запрос в блоках списка........................................201
Реакция на блок списка........................................201
Пример программы: LBoxTest....................................202
Использование статических управляющих элементов...............203
Построение статических управляющих элементов..................204
Пример программы StatTest.....................................205
Использование командных кнопок................................206
Построение командных кнопок...................................207
Реакция на командные кнопки...................................207
Использование блоков выбора...................................208
Построение кнопок с зависимой и независимой фиксацией.........208
Модификация блоков выбора.....................................210
Опрос блоков выбора...........................................210
Использование групповых блоков................................210
Построение групповых блоков...................................211
Группирование управляющих элементов...........................211
Реакция на групповые блоки....................................213
Пример программы: BtnTest.....................................213
Использование полос прокрутки.................................214
Построение полос прокрутки....................................214
Управление диапазоном полосы прокрутки........................215
Управление параметрами полосы прокрутки.......................216
Опрос полосы прокрутки........................................216
Модификация полос прокрутки...................................216
Реакция на полосы прокрутки...................................217
Пример программы: SBarTest....................................218
Использование управляющих элементов редактирования............218
B.Pascal 7 & Objects/OW - 6 -
Построение управляющих элементов редактирования...............220
Использование буфера вырезанного изображения и меню Edit......220
Опрос управляющих элементов редактирования....................222
Модификация управляющих элементов редактирования..............223
Пример программы: EditTest....................................224
Использование комбинированных блоков..........................224
Три типа комбинированных блоков...............................225
Выбор типа комбинированного блока.............................226
Построение комбинированных блоков.............................226
Модификация комбинированных блоков............................227
Пример программы: CBoxTest....................................227
Установка значений управляющих элементов......................227
Для чего используется буфер передачи?.........................228
Определение буфера передачи...................................228
Определение окна..............................................231
Использование буфера передачи с диалоговым блоком.............231
Использование буфера передачи с окном.........................233
Передача данных...............................................233
Передача данных в окно........................................233
Передача данных из диалогового окна...........................233
Передача данных из окна.......................................234
Поддержка передачи для специализированных управляющих
элементов....................................................234
Пример программы: TranTest....................................234
Использование специализированных управляющих элементов........236
Специализированные управляющие элементы Borland для Windows...236
Использование стандартных BWCC................................237
Средства BWCC.................................................237
Расширение BWCC...............................................238
Создание ваших собственных специализированных управляющих
элементов....................................................240
Глава 13. Проверка допустимости данных........................241
Три вида проверки допустимости данных.........................241
Фильтрация ввода..............................................242
Проверка допустимости каждого поля............................242
Проверка допустимости полных экранов..........................242
Использование механизма проверки допустимости данных..........243
Построение объектов проверки допустимости.....................244
Добавление к управляющим элементам............................244
Как работает проверка допустимости............................244
Методы объекта проверки допустимости..........................245
Проверка допустимости данных..................................245
Проверка полной строки........................................246
Проверка допустимости нажатий клавиш..........................246
Сообщение о недопустимых данных...............................246
Стандартные средства проверки допустимости....................248
Абстрактный объект проверки допустимости......................248
Фильтрация....................................................248
Проверка диапазона............................................249
Проверка допустимости с просмотром............................249
Просмотр строк................................................249
Проверка допустимости по шаблону..............................250
Глава 14. Объекты MDI.........................................251
B.Pascal 7 & Objects/OW - 7 -
Меню дочернего окна...........................................252
Дочерние окна MDI.............................................252
Окна MDI в ObjectWindows......................................252
Построение приложения MDI.....................................252
Построение рамки MDI..........................................253
Создание меню дочерних окон...................................253
Создание дочерних окон MDI....................................254
Автоматические дочерние окна..................................254
Управление дочерним окном MDI.................................255
Настройка активизации дочернего окна..........................256
Обработка сообщений в приложении MDI..........................256
Пример приложения MDI.........................................256
Глава 15. Объекты печати......................................257
Почему печать представляет трудности?.........................257
Печать в ObjectWindows........................................257
Построение объекта принтера...................................258
Создание распечатки...........................................259
Печать документа..............................................259
Задание параметров печати.....................................260
Подсчет страниц...............................................260
Печать каждой страницы........................................261
Указание оставшихся страниц...................................263
Другие соглашения по печати...................................263
Печать содержимое окна........................................264
Вывод распечатки на принтер...................................265
Выбор другого принтера........................................265
Выбор принтера пользователем..................................266
Назначение конкретного принтера...............................266
Часть 3. Продвинутое программирование с использование
ObjectWindows................................................267
Глава 16. Сообщения Windows...................................267
Что такое сообщение?..........................................267
Именующие сообщения...........................................268
Откуда поступают сообщения....................................268
Обычная диспетчеризация сообщений.............................269
Способ, предлагаемый ObjectWindows............................269
Динамические виртуальные методы...............................270
Написание методов реакции на сообщение........................270
Что такое сообщение?..........................................271
Поля параметров...............................................271
Поле Result...................................................272
Объектно-ориентированная обработка сообщения..................272
Отмена поведения по умолчанию.................................272
Замена поведения по умолчанию.................................273
Дополнение поведения по умолчанию.............................273
Вызов наследуемых методов.....................................273
Вызов процедур, используемых по умолчанию.....................274
Командные, уведомляющие и управляющие идентификаторы..........275
Командные сообщения...........................................275
Уведомляющие сообщения........................................276
Уведомления управляющих элементов.............................276
Уведомление порождающего объекта..............................277
Уведомления управляющих элементов и порождающих объектов......278
B.Pascal 7 & Objects/OW - 8 -
Определение ваших собственных сообщений.......................278
Передача сообщений............................................279
Передача и отправление сообщений..............................279
Передача сообщения............................................280
Отправление сообщения.........................................280
Передача сообщения управляющему элементу......................280
Диапазоны сообщений...........................................282
Глава 17. Интерфейс с графическими устройствами...............284
Запись на устройство вывода...................................284
Чем отличаются контексты устройства?..........................285
Управление контекстом дисплея.................................285
Работа с контекстом дисплея...................................286
Что содержится в контексте устройства?........................286
Побитовая графика.............................................287
Изобразительные средства......................................287
Цвет..........................................................289
Режимы отображения............................................289
Обрезание областей............................................289
Инструментальные средства рисования...........................290
Основные инструментальные средства............................290
Логические инструментальные средства..........................291
Логические перья..............................................291
Логические кисти..............................................293
Логические шрифты.............................................294
Использование изобразительных инструментальных средств........298
Отображение графики в окнах...................................300
Изображение окон..............................................300
Стратегия графики.............................................301
Рисование в окнах.............................................301
Графические функции GDI.......................................302
Функции изображения текста....................................302
Функции рисования линий.......................................303
Изображение фигур.............................................305
Использование палитр..........................................307
Установка палитры.............................................307
Рисование с палитрами.........................................308
Запрос палитры................................................308
Модификация палитры...........................................309
Реакция на изменения палитры..................................309
Глава 18. Более подробно о ресурсах...........................311
Создание ресурсов.............................................311
Добавление ресурсов к выполняемой программе...................312
Загрузка ресурсов в приложение................................312
Загрузка меню.................................................312
Загрузка оперативных клавиш...................................313
Загрузка блоков диалога.......................................314
Загрузка курсоров и пиктограмм................................315
Загрузка строковых ресурсов...................................315
Загрузка графических изображений..............................317
Использование побитовых отображений для создания кистей.......319
Отображение графических изображений в меню....................320
Глава 19. Наборы..............................................322
Объекты наборов...............................................322
B.Pascal 7 & Objects/OW - 9 -
Динамическая установка размеров наборов.......................322
Полиморфизм наборов...........................................323
Проверка типа и наборы........................................323
Объединение в набор элементов, не являющихся объектами........324
Создание набора...............................................324
Методы итератора..............................................326
Итератор ForEach..............................................326
Итераторы FirstThat и LastThat................................327
Отсортированные наборы........................................328
Наборы строк..................................................329
Пересмотренные итераторы......................................331
Полиморфические наборы........................................331
Наборы и управление памятью...................................335
Глава 20. Потоки..............................................336
Вопрос: объектный ввод-вывод..................................336
Ответ: потоки.................................................337
Полиморфизм потоков...........................................337
Потоки обрабатывают объекты...................................337
Смысл использования потоков...................................338
Чтение из потока и запись в поток.............................339
Закрытие потока...............................................340
Как сделать объекты потоковыми................................340
Методы загрузки и хранения....................................340
Регистрация потока............................................341
Номера идентификаторов объектов...............................342
Автоматические поля...........................................342
Регистрация на месте..........................................343
Регистрация стандартных объектов..............................343
Механизм потока...............................................343
Процесс Put...................................................343
Процесс Get...................................................344
Обработка указателей объектов со значением nil................344
Наборы в потоке: пример.......................................344
Добавление методов Store......................................345
Регистрация записей...........................................346
Регистрация...................................................347
Запись в поток................................................347
Как все хранится?.............................................348
Поля в потоке.................................................348
Родство экземпляров окон......................................349
Копирование потока............................................350
Потоки произвольного доступа..................................350
Необъектные элементы потоков..................................351
Разработка пользователем собственных потоков..................351
Обработка ошибок потока.......................................352
Часть 4. Справочник по ObjectWindows..........................353
Глава 21. Объектные типы ObjectWindows........................353
TSample модуль
TSample......................................................354
Поля..........................................................354
Методы........................................................354
Init..........................................................355
Zilch (иногда переопределяется)...............................355
B.Pascal 7 & Objects/OW - 10 -
Процедура Sample (модуль
Sample)......................................................355
Процедура Abstract модуль
Objects......................................................355
Функция AllocMultiSel модуль
ODialogs.....................................................355
Переменная Application модуль
OWindows.....................................................356
Константы bf_XXXX модуль
ODialogs.....................................................356
Стили кнопок bs_XXXX модуль
WinTypes.....................................................357
Переменная BWCCClassNames модуль
OWindows.....................................................358
Стили комбинированного блока cbs_XXXX модуль
WinTypes.....................................................359
Константы cm_XXXX модуль
OWindows.....................................................361
Константы coXXXX модуль
Objects......................................................363
Стили класса cs_XXXX модуль
WinTypes.....................................................364
Константа cw_UseDefault модуль
WinTypes.....................................................365
Процедура DoneMemory модуль
OMemory......................................................365
Константы em_XXXX модуль
OWindows.....................................................365
Переменная EmsCurHandle модуль
Objects......................................................365
Переменная EmsCurPage модуль
Objects......................................................366
Стили управляющих элементов es_XXXX модуль
WinTypes.....................................................366
Процедура FreeMultiSel модуль
ODialogs.....................................................368
Константа tsFileSpec модуль
OStdDlgs.....................................................368
Константы id_XXXX модуль
OWindows.....................................................369
Процедура InitMemory модуль
OMemory......................................................370
Стили блока списка lbs_XXXX модуль
WinTypes.....................................................370
Функция LongDiv модуль
OWindows.....................................................372
Функция LongMul модуль
OWindows.....................................................373
Тип LongRec модуль
Objects......................................................373
Функция LoMemory модуль
OMemory......................................................373
Тип MakeIntResource модуль
B.Pascal 7 & Objects/OW - 11 -
WinTypes.....................................................373
Переменная MaxCollectionSize модуль
Objects......................................................374
Флаги блоков mb_XXXX модуль
WinTypes.....................................................375
Функция MemAlloc модуль
OMemory......................................................376
Функция MemAllocSeg модуль
OMemory......................................................376
Константы nf_XXXX модуль
OWindows.....................................................377
Константы pf_XXX модуль
OPrinter.....................................................378
Тип PString модуль
Objects......................................................379
Тип PtrRec модуль
Objects......................................................379
Процедура RegisterODialogs модуль
ODialogs.....................................................379
Процедура RegisterOStdWnds модуль
OSrdWnds.....................................................379
Процедура RegisterOWindows модуль
OWindows.....................................................380
Процедура RegisterType модуль
Objects......................................................380
Процедура RegisterValidate модуль
Validate.....................................................380
Процедура RestoreMemory модуль
OMemory......................................................380
Переменная SafetyPoolSize модуль
OMemory......................................................381
Стили полосы прокрутки sbs_XXXX модуль
WinTypes.....................................................382
Константы sd_XXXX модуль
OStdDlgs.....................................................384
Стили управляющего элемента ss_XXXX модуль
WinTypes.....................................................385
Пpедопpеделенные логические объекты модуль
WinTypes.....................................................386
Переменная StreamError модуль
Objects......................................................387
Константы stXXX модуль
Objects......................................................388
Константы отображения окна sw_XXX модуль
WinTypes.....................................................389
TApplication модуль
OWindows.....................................................391
Поля..........................................................391
Методы........................................................392
Init (иногда переопределяется)................................392
Done (иногда переопределяется)................................392
CanClose (переопределяется редко).............................393
Error (часто переопределяется)................................393
B.Pascal 7 & Objects/OW - 12 -
ExecDialog (никогда не переопределяется)......................393
ExecDialog (никогда не переопределяется)......................393
IdleAction....................................................394
InitApplication (иногда переопределяется).....................394
InitInstance (иногда переопределяется)........................394
InitMainWindow (всегда переопределяется)......................395
MakeWindow (никогда не переопределяется)......................395
MessageLooр (никогда не переопределяется).....................395
рrocessAccels (иногда переопределяется).......................396
рrocessAppMsg (иногда переопределяется).......................396
рrocessDlgMsg (иногда переопределяется).......................396
рrocessDMIAccels (иногда переопределяется)....................396
Функция Run (переопределяется редко)..........................398
SetKBHandler (никогда не переопределяется)....................398
TBufStream модуль
Objects......................................................399
Поля..........................................................399
Методы........................................................400
Init..........................................................400
Done (никогда не переопределяется)............................400
Flush (никогда не переопределяется)...........................400
Getрos (никогда не переопределяется)..........................401
GetSize (никогда не переопределяется).........................401
Read (никогда не переопределяется)............................401
Seek (никогда не переопределяется)............................401
Truncate (никогда не переопределяется)........................401
Write (никогда не переопределяется)...........................402
TButton модуль
ODialogs.....................................................403
Методы........................................................405
Init..........................................................405
InitResource..................................................405
GetClassName (никогда не переопределяется)....................405
Тип TByteArray модуль
Objects......................................................405
TCheckBox модуль
ODialogs.....................................................407
Поля..........................................................408
Методы........................................................409
Init (иногда переопределяется)................................409
InitResource..................................................409
Load..........................................................409
BNClicked (иногда переопределяется)...........................410
Check (переопределяется редко)................................410
GetCheck (переопределяется редко).............................410
GetClassName..................................................410
SetCheck (переопределяется редко).............................410
Store.........................................................411
Toggle (переопределяется редко)...............................411
Transfer (иногда переопределяется)............................411
UnСheck (переопределяется редко)..............................411
TCollection модуль
Objects......................................................413
B.Pascal 7 & Objects/OW - 13 -
Поля..........................................................413
Методы........................................................414
Init..........................................................414
Load..........................................................414
Done (часто переопределяется).................................414
At............................................................415
AtDelete......................................................415
AtFree........................................................415
AtInsert......................................................415
Atрut.........................................................416
Delete........................................................416
DeleteAll.....................................................416
Error (иногда переопределяется)...............................416
FirstThat.....................................................416
ForEach.......................................................417
Free..........................................................417
FreeAll.......................................................418
FreeItem (иногда переопределяется)............................418
GetItem (иногда переопределяется).............................418
IndexOf (никогда не переопределяется).........................418
Insert (никогда не переопределяется)..........................419
Insert (никогда не переопределяется)..........................419
рutItem (иногда переопределяется).............................419
SetLimit (переопределяется редко).............................420
Store.........................................................420
TComboBox модуль
ODialogs.....................................................421
Поля..........................................................423
Методы........................................................423
Init (иногда переопределяется)................................423
InitResource..................................................423
Load..........................................................424
Clear.........................................................424
GetClassName (никогда не переопределяется)....................424
GetEditSel....................................................424
GetText.......................................................424
GetTextLen....................................................425
HideList......................................................425
SetEditSel....................................................425
SetText.......................................................425
SetuрWindow...................................................425
ShowList......................................................425
Store.........................................................426
Transfer......................................................426
TControl модуль
ODialogs.....................................................427
Методы........................................................428
Init..........................................................428
InitResource..................................................429
GetGlassName (всегда переопределяется)........................429
Register (никогда не переопределяется)........................429
WMрaint (переопределяется редко)..............................429
TDialog модуль
B.Pascal 7 & Objects/OW - 14 -
ODialog......................................................430
Поля..........................................................431
IsModal.......................................................431
Методы........................................................432
Init (иногда переопеределяется)...............................432
Load..........................................................432
Done (иногда переопределяется)................................432
Cancel (иногда переопределяется)..............................432
Create (никогда не переопределяется)..........................433
DefWndрroc (никогда не переопределяется)......................433
EndDlg (никогда не переопределяется)..........................433
Execute (никогда не переопределяется).........................433
GetItemHandle (никогда не переопределяется)...................434
Ok (иногда переопределяется)..................................434
SendDlgItemMsg (никогда не переопределяется)..................434
Store.........................................................434
WMClose.......................................................434
WMInitDialog (никогда не переопределяется)....................435
WMрostInvalid.................................................435
WMQueryEndSession.............................................435
Тип TDialogAttr модуль
ODialogs.....................................................435
TDlgWindow модуль
ODialogs.....................................................437
Методы........................................................438
Init..........................................................438
Create (никогда не переопределяется)..........................439
GetWindowClass (часто переопределяется).......................439
TDosStream модуль
Objects......................................................440
Поля..........................................................440
Методы........................................................440
Init..........................................................440
Done (никогда не переопределяется)............................441
Getрos (никогда не переопределяется)..........................441
GetSize (никогда не переопределяется).........................441
Read (никогда не переопределяется)............................441
Seek (никогда не переопределяется)............................441
Truncate (никогда не переопределяется)........................442
Write (никогда не переопределяется)...........................442
TEdit модуль
ODialogs.....................................................443
Поля..........................................................445
Методы........................................................445
Init..........................................................445
InitResource..................................................446
Load..........................................................446
Done..........................................................446
CanClose......................................................447
CanUndo (переопределяется редко)..............................447
ClearModify (переопределяется редко)..........................447
CMEditClear (никогда не переопределяется).....................447
CMEditCoрy (никогда не переопределяется)......................447
B.Pascal 7 & Objects/OW - 15 -
CMEditCut (никогда не переопределяется).......................448
CMEditDelete (никогда не переопределяется)....................448
CMEditрaste (никогда не переопределяется).....................448
CMEditUndo (никогда не переопределяется)......................448
Coрy (переопределяется редко).................................449
Cut (переопределяется редко)..................................449
DeleteLine (переопределяется редко)...........................449
DeleteSelection (переопределяется редко)......................449
DeleteSubText (переопределяется редко)........................449
GetClassName (никогда не переопределяется)....................449
GetLine (переопределяется редко)..............................450
GetLineFromрos (переопределяется редко).......................450
GetLineIndex (переопределяется редко).........................450
GetLineLength (переопределяется редко)........................450
GetNumLines (переопределяется редко)..........................451
GetSelection (переопределяется редко).........................451
GetSubText (переопределяется редко)...........................451
Insert (переопределяется редко)...............................451
IsModified (переопределяется редко)...........................452
IsValid.......................................................452
рaste (переопределяется редко)................................452
Scroll (переопределяется редко)...............................452
Search........................................................452
SetSelection (переопределяется редко).........................453
SetuрWindow...................................................453
SetValidator..................................................453
Store.........................................................453
Transfer (иногда переопределяется)............................454
Undo (переопределяется редко).................................454
WMChar........................................................454
WMGetDlgCode..................................................454
WMKeyDown.....................................................455
WMKillFocus...................................................455
TEditPrintout
OPrinter.....................................................456
Поля..........................................................456
Методы........................................................457
Init..........................................................457
BeginDocument.................................................458
GetDialogInfo.................................................458
HasHextPage...................................................458
PrintPage.....................................................458
SetPrintParams................................................459
TEditWindow модуль
OStdWnds.....................................................460
TEmsStream модуль
Objects......................................................462
Поля..........................................................462
Методы........................................................463
Init..........................................................463
Done (никогда не переопределяется)............................463
GetPos (никогда не переопределяется)..........................463
GetSize (никогда не переопределяется).........................463
B.Pascal 7 & Objects/OW - 16 -
Read (никогда не переопределяется)............................463
Seek (никогда не переопределяется)............................464
Truncate (никогда не переопределяется)........................464
Write (никогда не переопределяется)...........................464
Константы tf_XXXX модуль
OWindows.....................................................464
TFileDialog модуль
OStdDlgs.....................................................466
Поля..........................................................467
Методы........................................................468
Init..........................................................468
CanClose......................................................468
SetupWindow...................................................468
HandleFName...................................................469
HandleFList...................................................469
HandleDList...................................................469
TFileWindow
OStdWnds.....................................................470
TFilterValidator модуль
Validate.....................................................472
Поля..........................................................472
Методы........................................................472
Init..........................................................472
Load..........................................................472
Error.........................................................473
IsValid.......................................................473
IsValidInput..................................................473
Store.........................................................473
TGroupBox
ODialogs.....................................................474
Поля..........................................................475
Методы........................................................476
Init (иногда переопределяется)................................476
InitResource..................................................476
Load..........................................................476
GetClassName (иногда переопределяется)........................476
SelectionChanged (иногда переопределяется)....................477
Store.........................................................477
TInputDialog модуль
OStdDlgs.....................................................478
Поля..........................................................479
Методы........................................................480
Init..........................................................480
CanClose......................................................480
SetupWindow...................................................480
Тип TItemList модуль
Objects......................................................480
TListBox модуль
ODialogs.....................................................482
Методы........................................................483
Init..........................................................483
AddString (иногда переопределяется)...........................484
ClearList (иногда переопределяется)...........................484
B.Pascal 7 & Objects/OW - 17 -
DeleteString (иногда переопределяется)........................484
GetClassName (переопределяется редко).........................484
GetCount (никогда не переопределяется)........................484
GetMsgID......................................................485
GetSelIndex (переопределяется редко)..........................485
GetSelString (переопределяется редко).........................485
GetString (переопределяется редко)............................485
GetStringLen (переопределяется редко).........................485
InsertString (иногда переопределяется)........................486
SetSelIndex (переопределяется редко)..........................486
SetSelString (переопределяется редко).........................486
Transfer (иногда переопределяется)............................486
TLookupValidator модуль
Validate.....................................................488
Методы........................................................488
IsValid (переопределяется редко)..............................488
Lookup (часто переопределяется)...............................488
TMDIClient модуль
OWindows.....................................................490
Поля..........................................................491
Методы........................................................492
Init (переопределяется редко).................................492
Load..........................................................492
ArrangeIcons (переопределяется редко).........................492
CascadeChildren (переопределяется редко)......................492
GetClassName (никогда не переопределяется)....................493
Register......................................................493
Store.........................................................493
TileChildren (переопределяется редко).........................493
WMPaint (никогда не переопределяется).........................493
TMDIWindow модуль
OWindows.....................................................494
Поля..........................................................495
Методы........................................................496
Init (часто переопределяется).................................496
Load..........................................................496
Done (иногда переопределяется)................................496
ArrangeIcons (переопределяется редко).........................497
CascadeChildren (переопределяется редко)......................497
CloseChildren (переопределяется редко)........................497
CMArrangeIcons (переопределяется редко).......................497
CMCascadeChildren (переопределяется редко)....................497
CMCreateChild (никогда не переопределяется)...................498
CMTileChildren (переопределяется редко).......................498
CreateChild...................................................498
DefWndProc....................................................498
GetClassName (иногда переопределяется)........................498
GetClient (никогда не переопределяется).......................499
GetWindowClass (иногда переопределяется)......................499
InitChild (часто переопределяется)............................499
InitClientWindow (иногда переопределяется)....................499
SetupWindow (часто переопределяется)..........................499
Store.........................................................500
B.Pascal 7 & Objects/OW - 18 -
TileChildren (переопределяется редко).........................500
Тип TMessage модуль
OWindows.....................................................501
Тип TMultiSelRec модуль
ODialogs.....................................................501
TObject модуль
Objects......................................................502
Методы........................................................502
Init..........................................................502
Free..........................................................502
Done..........................................................502
Тип TPaintStruct модуль
WinTypes.....................................................502
Тип TPicResult модуль
Validate.....................................................503
TPrintDialog модуль
OPrinter.....................................................504
Поля..........................................................505
Методы........................................................507
Init..........................................................507
Тип TPrintDialogRec модуль
OPrinter.....................................................508
TPrinter модуль
OPrinter.....................................................510
Поля..........................................................510
Методы........................................................512
Init..........................................................512
Done (переопределяется редко).................................512
ClearDevice...................................................512
Configure.....................................................512
GetDC (переопределяется редко)................................512
InitAbortDialog (переопределяется редко)......................513
InitPrintDialog (переопределяется редко)......................513
InitSetupDialog (переопределяется редко)......................513
Print.........................................................513
ReportError (иногда переопределяется).........................514
SetDevice.....................................................514
Setup.........................................................514
TPrinterAbortDlg модуль
OPrinter.....................................................515
Методы........................................................516
Init..........................................................516
SetupWindow (переопределяется редко)..........................516
WMCommand (переопределяется редко)............................517
TPrinterSetupDlg модуль
OPrinter.....................................................518
Поля..........................................................519
Методы........................................................519
Init..........................................................519
Done (переопределяется редко).................................520
Cancel (никогда не переопределяется)..........................520
IDSetup (никогда не переопределяется).........................520
TransferData (никогда не переопределяется)....................520
B.Pascal 7 & Objects/OW - 19 -
TPrintout модуль
OPrinter.....................................................521
Поля..........................................................521
Методы........................................................522
Init..........................................................522
Done..........................................................522
BeginPrinting.................................................523
EndDocument...................................................523
EndPrinting...................................................523
GetDialogInfo.................................................523
GetSelection..................................................524
HasNextPage...................................................524
PrintPage.....................................................524
SetPrintParams................................................524
TPXPictureValidator модуль
Validate.....................................................526
Поля..........................................................526
Методы........................................................526
Init..........................................................526
Load..........................................................527
Done..........................................................527
Error.........................................................527
ISValidInput..................................................527
IsInvalid.....................................................527
Picture.......................................................528
Store.........................................................529
TRadioButton модуль
ODialogs.....................................................530
Методы........................................................531
Init (иногда переопределяется)................................531
GetGlassName..................................................532
TRangeValidator модуль
Validate.....................................................533
Поля..........................................................533
Методы........................................................533
Init..........................................................534
Load..........................................................534
Error.........................................................534
IsValid.......................................................534
Store.........................................................535
Transfer......................................................535
TScrollBar модуль
ODialogs.....................................................536
Поля..........................................................538
Методы........................................................538
Init..........................................................538
InitResource..................................................538
Load..........................................................539
DeltaPos (переопределяется редко).............................539
GetClassName (никогда не переопределяется)....................539
GetPosition (переопределяется редко)..........................539
GetRange (переопределяется редко).............................539
SBBottom (переопределяется редко).............................540
B.Pascal 7 & Objects/OW - 20 -
SBLineDown (переопределяется редко)...........................540
SBLineUp (переопределяется редко).............................540
SBPageDown (переопределяется редко)...........................540
SBPageUp (переопределяется редко).............................540
SBThumbPosition (переопределяется редко)......................541
SBThumbTrack (иногда переопределяется)........................541
SBTop (переопределяется редко)................................541
SetPosition (переопределяется редко)..........................541
SetRange (переопределяется редко).............................541
SetupWindow (иногда переопределяется).........................542
Store.........................................................542
Transfer (иногда переопределяется)............................542
TScroller модуль
OWindow......................................................543
Поля..........................................................543
Методы........................................................546
Init..........................................................546
Load..........................................................546
Done..........................................................546
AutoScroll (иногда переопределяется)..........................547
BeginView.....................................................547
EndView (иногда переопределяется).............................547
HScroll (никогда не переопределяется).........................547
IsVisibleRect (переопределяется редко)........................547
ScrollBy (переопределяется редко).............................547
ScrollTo (иногда переопределяется)............................548
SetPageSize (иногда переопределяется).........................548
SetRange (никогда не переопределяется)........................548
SetBarRange (никогда не переопределяется).....................548
SetUnits......................................................548
Store.........................................................548
VScroll (никогда не переопределяется).........................549
TSortedCollection модуль
Objects......................................................550
Поля..........................................................550
Методы........................................................551
Load..........................................................551
Compare (всегда переопределяется).............................551
IndexOf (никогда не переопределяется).........................551
Insert (никогда не переопределяется)..........................552
KeyOf (иногда переопределяется)...............................552
Search (переопределяется редко)...............................552
Store.........................................................553
TStatic модуль
ODialogs.....................................................554
Поля..........................................................555
Методы........................................................555
Init..........................................................556
InitResource..................................................556
Load..........................................................556
Clear (переопределяется редко)................................556
GetClassName (переопределяется редко).........................556
GetText (переопределяется редко)..............................557
B.Pascal 7 & Objects/OW - 21 -
SetText (переопределяется редко)..............................557
Store.........................................................557
Transfer (иногда переопределяется)............................557
TStrCollection модуль
Objects......................................................558
Методы........................................................558
Compare (иногда переопределяется).............................558
FreeItem (переопределяется редко).............................559
GetItem (переопределяется редко)..............................559
PutItem (переопределяется редко)..............................559
TStream метод
Objects......................................................560
Поля..........................................................560
ErrorInfo (чтение/запись).....................................560
Методы........................................................561
CopyFrom......................................................561
Error (иногда переопределяется)...............................561
Flush (иногда переопределяется)...............................561
Get...........................................................562
GetPos (всегда переопределяется)..............................562
GetSize (всегда переопределяется).............................562
Put...........................................................562
Read (всегда переопределяется)................................563
ReadStr.......................................................563
Reset.........................................................563
Seek (всегда переопределяется)................................563
StrRead.......................................................564
Truncate (всегда переопределяется)............................564
Write (всегда переопределяется)...............................564
WriteStr......................................................564
Тип TStreamRec модуль
Objects......................................................565
TStringLookupValidator модуль
Validate.....................................................567
Поля..........................................................567
Методы........................................................567
Init..........................................................567
Load..........................................................568
Done..........................................................568
Error.........................................................568
Lookup........................................................568
NewStringList.................................................568
Store.........................................................569
TValidator модуль
Validate.....................................................570
Поля..........................................................570
Status........................................................570
Методы........................................................570
Init..........................................................570
Load..........................................................571
Error.........................................................571
IsValid.......................................................571
IsValidInput..................................................571
B.Pascal 7 & Objects/OW - 22 -
Store.........................................................572
Transfer......................................................572
Valid.........................................................573
Тип TVTransfer модуль
Validate.....................................................574
Тип TWndClass модуль
WinTypes.....................................................574
TWindow модуль
OWindows.....................................................576
Поля..........................................................577
Методы........................................................578
Init (часто переопределяется).................................578
InitResource..................................................579
Load..........................................................579
Done (часто переопределяется).................................579
Create........................................................579
DefWndProc (никогда не переопределяется)......................580
FocusChild....................................................580
GetID (переопределяется редко)................................580
GetWindowClass (часто переопределяется).......................580
Paint (часто переопределяется)................................580
SetCaption....................................................581
SetupWindow (часто переопределяется)..........................581
Store.........................................................581
UpdateFocusChild..............................................581
WMActivate (иногда переопределяется)..........................582
WMCreate......................................................582
WMHScroll (иногда переопределяется)...........................582
WMLButtonDown (иногда переопределяется).......................582
WMMDIActivate.................................................583
WMMove........................................................583
WMPaint (переопределяется редко)..............................583
WMSize (иногда переопределяется)..............................583
WMSysCommand..................................................583
WMVScroll (иногда переопределяется)...........................584
Тип TWindowAttr модуль
OWindows.....................................................585
TWindowPrintout модуль
OPrinter.....................................................586
Поля..........................................................586
Методы........................................................586
Init..........................................................586
GetDialogInfo.................................................587
PrintPage.....................................................587
TWindowsObject модуль
OWindows.....................................................588
Поля..........................................................588
Методы........................................................590
Init (часто переопределяется).................................590
Load..........................................................590
Done (часто переопределяется).................................590
AddChild......................................................591
At............................................................591
B.Pascal 7 & Objects/OW - 23 -
CanClose (иногда переопределяется)............................591
ChildWithID (никогда не переопределяется).....................591
CloseWindow...................................................591
CMExit........................................................591
Create (никогда не переопределяется)..........................592
CreateChildren................................................592
DefChildProc (иногда переопределяется)........................592
DefCommandProc (иногда переопределяется)......................592
DefNotificationProc (иногда переопределяется).................593
DefWndProc....................................................593
Destroy (никогда не переопределяется).........................593
Disable.......................................................593
DisableAutoCreate.............................................594
DisableTransfer...............................................594
DispatchScroll (никогда не переопределяется)..................594
Enable........................................................594
EnableAutoCreate..............................................594
EnableKBHandler...............................................595
EnableTransfer................................................595
FirstThat.....................................................595
Focus.........................................................596
ForEach.......................................................596
GetChildPtr...................................................596
GetChildren...................................................596
GetClassName (иногда переопределяется)........................597
GetClient (никогда не переопределяется).......................597
GetId (переопределяется редко)................................597
GetSiblingPtr.................................................597
GetWindowClass (иногда переопределяется)......................598
IndexOf.......................................................598
IsFlagSet.....................................................598
Next..........................................................598
Previous......................................................598
PutChildPtr...................................................599
PutChildren...................................................599
PutSiblingPtr.................................................599
Register (никогда не переопределяется)........................599
RemoveChild...................................................600
SetFlags......................................................600
SetupWindow (часто переопределяется)..........................600
Show (никогда не переопределяется)............................600
Store.........................................................601
Transfer (иногда переопределяется)............................601
TransferData (иногда переопределяется)........................601
WMActivate (иногда переопределяется)..........................601
WMClose (иногда переопределяется).............................602
WMCommand (переопределяется редко)............................602
WMDestroy (переопределяется редко)............................602
WMHScroll (переопределяется редко)............................602
WMNCDestroy (никогда не переопределяется).....................602
WMQueryEndSession.............................................603
WMVScroll (переопределяется редко)............................603
Тип TWordArray модуль
B.Pascal 7 & Objects/OW - 24 -
Objects......................................................603
Константы voXXXX модуль
Validate.....................................................604
Константы vsXXXX модуль
Validate.....................................................605
Константы wb_XXXX модуль
OWindows.....................................................606
Константы wm_XXXX модуль
OWindows.....................................................606
Тип WordRec модуль
Objects......................................................606
Стили окна ws_XXXX модуль
WinTypes.....................................................608
скачать | некачать