------------------------------------------------------------------------
       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
скачать | некачать
Hosted by uCoz