Четвертый Borland C++ и его окружение

         

- F -


Failed to locate DPMI server (MPMI16BI.OVL)

Failed to locate protected mode loader (DPMILOAD.EXE)


Сообщение об ошибке этапа компиляции

(не найден сервер DPMI)

Убедитесь, что файлы MPMI16BI.OVL находится в каком-либо

указанном в маршруте каталоге, или в том же каталоге, что и командное средство защищенного режима, которое вы пытаетесь использовать.

Failed to locate protected mode loader (DMPILOAD.EXE)


Фатальная ошибка командной строки:

(не найден загрузчик защищенного режима)

Убедитесь, что файл DMPILOAD.EXE находится в каком-либо указанном в маршруте каталоге, или в том же каталоге, что и командное средство защищенного режима, которое вы пытаетесь использовать.

Failed read from имя_файла


Сообщение об ошибке утилиты TLINK

(чтение из файла невозможно)

Компоновщик не может прочитать данный файл.

Failed write from имя_файла


Сообщение об ошибке утилиты TLINK

(запись в файла невозможна)

Компоновщик не может записать данный файл.

__far16 may be used with __pascal or __cdecl


Сообщение об ошибке этапа компиляции

(__far16 может использоваться __pascal или __cdecl)



Для вызовов функций или ссылки на данные в 16-разрядной DLL

вы использовали __far16, но такие функции и данные могут модифицироваться только с помощью __pascal или __cdecl.

File must contain at least one external declaration


Сообщение об ошибке этапа компиляции

(файл должен содержать хотя бы одно объявление external)

Данная единица компиляции было логически пустой и не содержала никаких объявлений. Язык Си стандарта ANSI и С++ требуют,

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

File name too long


Сообщение об ошибке этапа компиляции

(слишком длинное имя файла)

Имя файла в директиве #include было слишком длинным для обработки его компилятором. Имена файлов в DOS не могут превышать

79 символов.

File name too long


Сообщение об ошибке этапа компиляции

(имя файла имеет слишком большую длину)

Имя файла, заданное в директиве !include, имеет слишком

большую длину для обработки ее обслуживающей программой МAKE 512 байт (размер внутреннего буфера).




имя_файла file not found

Предупреждение утилиты TLIB

(указанный файл не найден)

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

добавить несуществующий объект, но библиотека создана.

имя_файла file not found

Сообщение об ошибке утилиты TLIB

(указанный файл не найден)

Интегрированная интерактивная среда создает библиотеку, удаляя сначала существующую библиотеку, а затем выполняя перестройку. Если какой-либо объект не существует, то библиотека считается

неполной, и возникает данная ошибка. Если интегрированная среда

сообщает, что библиотека не существует, то при компиляции исходного модуля могли быть ошибки. Выполнение команд Compile Make или

Compile Build должно помочь избавиться от ошибки, или определить,

где существует ошибка.

имя_файла(имя_строки): File read error

Сообщение об ошибке утилиты TLINK

(ошибка чтения файла)

При чтении программой TLINK файла определения модуля возникла ошибка DOS. Это обычно указывает не преждевременный конец файла.

Fixup to zero length segment in module модуль

Сообщение об ошибке утилиты TLINK

(корректировка в сегмент с нулевым размером в указанном модуле)

Указывает на некорректную ссылку в объектном коде (которую

TLINK должен скорректировать во время компоновки) на код или данные.

Fixup owerflow at адрес, target=адрес

Сообщение об ошибке утилиты TLINK

(переполнение корректировок по указанному адресу)

Некорректные данные или ссылка на код в объектном файле, который компоновщик должен корректировать на этапе компоновки.

Причиной часто бывает несоответствие моделей памяти. Чаще

всего имеется ближний вызов функции в другом сегменте кода. Данная ошибка может также возникнуть, если вы генерируете ближнее

обращение к данным или ссылку данных на функцию. В любом случае

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

В программе на языке Ассемблера переполнение корректировок



часто возникает, если вы описываете внешнюю переменную в определении сегмента, но данная переменная на самом деле существует в

другом сегменте.

Если данный метод не позволяет идентифицировать причину

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

от Borland C++, то эта ошибка может вызываться другими причинами.

В Borland C++ данная ошибка может генерироваться, если вы используете сегменты и имена групп, отличные от используемых для данной

модели памяти по умолчанию.

Floating point error: Divide by 0

Floating point error: Domain

Floating point error: Overflow

Сообщение об ошибке этапа выполнения

(ошибка операции с плавающей точкой: деление на 0 или переполнение)

Данная фатальная ошибка является следствием операции с плавающей точкой, для которой результат не определен. "Деление на 0"

означает, что результат равен в точности +INF или -INF (плюс или

минус неопределенность), например для операции 1.0/0.0. Domain

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

потерю значимости, например в случае присваивания 1e20*1e20 переменной типа double.

Floating point error: Partial loss of precision

Сообщение об ошибке этапа выполнения

(ошибка операции с плавающей точкой: частичная потеря точности)

Эта особая ситуация по умолчанию маскируется, и сообщения об

ошибках не выдаются. Потери точности игнорируются. Отменить маску

можно, вызвав _control87.

Floating point error: Underflow

Сообщение об ошибке этапа выполнения

(ошибка операции с плавающей точкой: потеря значимости)

Эта особая ситуация по умолчанию маскируется, и сообщения об

ошибках не выдаются. Потеря значимости преобразуется в ноль. Отменить маску можно, вызвав _control87.

Floating point error: Stack fault

Сообщение об ошибке этапа выполнения

(ошибка операции с плавающей точкой: сбой в стеке)

Это сообщение указывает на выход за границы стека плавающей

точки. В нормальных условиях оно не появляется и поэтому может

означать либо то, что ассемблерный код использует слишком много



регистров, либо неправильное объявление функции с плавающей точкой.

Этой ошибки можно избежать, маскируя особые ситуации таким

образом, чтобы они не появлялись, либо перехватывая их функцией

signal или _control87.

For statement missing (

Сообщение об ошибке этапа компиляции

(в операторе for отсутствует ()

В операторе for компилятор не нашел левой круглой скобки

после ключевого слова for.

For statement missing )

Сообщение об ошибке этапа компиляции

(в операторе for отсутствует ))

В операторе for компилятор не нашел после управляющего выражения правой круглой скобки.

For statement missing ;

Сообщение об ошибке этапа компиляции

(в операторе for отсутствует ;)

В операторе for компилятор не нашел точки с запятой после

одного из выражений.

Friend must be functions or classes

Сообщение об ошибке этапа компиляции

("друзья" должны быть функциями или классами)

Дружественной в C++ может быть класс или другая функция.

Function call missing )

Сообщение об ошибке этапа компиляции

(в вызове функции отсутствует ))

Список аргументов при вызове функции содержит какую-то синтаксическую ошибку, например, отсутствует закрывающая правая

скобка.

Function calls not supported

Сообщение об ошибке этапа компиляции

(вызовы функции не поддерживаются)

При вычислении выражения интегрированным отладчиком вызовы

функций (включая функции неявного преобразования, конструкторы,

деструкторы, переопределенные операции и встраиваемые функции) не

поддерживается. Данное сообщение выводится отладчиком интегрированной среды.

Function defined inline after use as extern

Сообщение об ошибке этапа компиляции

(функция определена как встраиваемая после объявления

extern)

Функцию после того, как она была уже была использована нельзя определить как встраиваемую (inline). Или переставьте определение inline выше в тексте, или удалите его совсем.

Function definition cannot be a typedef'ed declaration

Сообщение об ошибке этапа компиляции

(определение функции не может быть объявлением typedef)



В Си стандарта ANSI тело функции не может определяться с помощью typedef с функцией Type.

Function функция cannot be static

Сообщение об ошибке этапа компиляции

(функция "функция" не может быть статической)

Только обычные функции-элементы и операции new и delete могут быть объявлены статическими (static). Конструкторы, деструкторы и прочие операции статическими быть не могут.

Function функция should have a prototype

Сообщение об ошибке этапа компиляции

(функция "функция" должна иметь прототип)

При вызове функции в области действия отсутствовал ее прототип.

В Си int foo(); не является прототипом, а int foo(int); является, также как и int foo(void);. В С++ int foo(); является

прототипом, также как и int foo(void);. В Си прототипы рекомендуется иметь для всех функций. В С++ прототипы для всех функций

обязательны. Во всех случаях, определение функции (заголовок и

тело функции) служит как прототип, если стоит перед любым другим

упоминанием функции.

Function should return a value

Предупреждение этапа компиляции

(функция должна возвращать значение)

Данная функция была описана (возможно неявно) как возвращающая значение. Был обнаружен оператор return без возвращаемого

значения или конец функции без оператора return. Возвращайте значение или описывайте функцию как void.

Functions функция_1 and функция_2 both use the same dispatch number

Сообщение об ошибке этапа компиляции

(обе функции используют один номер диспетчеризации)

Ошибка диспетчеризуемой виртуальной таблицы (DDVT). При переопределении динамически диспетчеризуемой функции в производном

классе используйте тот же индекс диспетчеризации.

Function cannot return array of functions

Сообщение об ошибке этапа компиляции

(функция не может возвращать массив функций)

Функция не может возвращать массив функций. Допускается возврат указателей или ссылок на массивы.

Functions containing local destructors are not expanded

inline in function функция

Предупреждение этапа компиляции



(функции, содержащие локальные деструкторы не могут быть

встраиваемыми функциями)

Вы создали встраиваемую функцию, для которой Borland C++

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

встраиваемых функций.

Functions containing резервируемое_слово are not expanded inline

Предупреждение этапа компиляции

(функции, содержащие резервируемое_слово не могут быть

подставляемыми)

Функции, содержащие резервируемые слова do, for, while,

goto, switch, break, continue и case, не могут быть подставляемыми, даже при наличии задания их как inline. Функция может использоваться, но будет рассматриваться как обычная статическая (не глобальная) функция. Копия этой функции будет находиться в любой

единице компиляции, где она вызывается.

Functions may not be part of a struct or union

Сообщение об ошибке этапа компиляции

(функции не могут быть частью структуры или объединения)

Данное поле структуры или объединения Си было объявлено с

типом функции, а не указателя функции. Функции в качестве полей

разрешены только в С++.


Файл BUILTINS.MAK


Вы быстро обнаружите, что существуют макрокоманды и правила

утилиты MAKE, которые требуется использовать снова и снова. Существует три способа их обработки:

Во-первых, вы можете заносить их в каждый создаваемый вами

формирующий файл для утилиты MAKE;

Во-вторых, вы можете занести все эти элементы в один файл

и воспользоваться директивой !include в каждом создаваемом

вами формирующем файле утилиты MAKE. (Другие директивы

описываются далее в этой главе.);

В-третьих, вы можете занести все эти элементы в файл

BUILTINS.MAK.

Каждый раз, когда вы запускаете утилиту MAKE, она ищет файл

с именем BUILTINS.MAK. Однако, наличие файла BUILTINS.MAK не является обязательным. Если MAKE обнаруживает файл BUILTINS.MAK, то

сначала она интерпретирует этот файл. Если утилита MAKE не может

обнаружить файл BUILTINS.MAK, то она переходит непосредственно к

интерпретации файла MAKEFILE (или того формирующего файла утилиты

MAKE, который был вами задан с помощью параметра -f).

Утилита MAKE сначала ищет файл BUILTINS.MAK в текущем каталоге. Если он отсутствует, и вы работаете под управлением DOS

версии 3.0 или старше, то MAKE осуществляет поиск в том каталоге,

откуда была вызвана сама утилита MAKE. Вам следует заносить файл

BUILTINS.MAK в тот же каталог, где находится файл MAKE.EXE.

Утилита MAKE всегда осуществляет поиск формирующего файла

только в текущем каталоге. Этот файл содержит правила для конкретной создаваемой выполняемой программы. Как файл BUILTINS.MAK,

так и формирующий файл подчиняются одинаковым синтаксическим правилам.

Поиск файлов, задаваемых с помощью директивы !include, также

осуществляется в текущем каталоге. Если вы используете параметр

-I (файлы включения), то она будет также выполнять поиск в каталоге, заданном с помощью параметра -I.

BUILTINS.MAK содержит стандартные правила и макрокоманды,

которые MAKE применяет перед тем, как MAKE использует формирующий

файл (параметр -r позволяет MAKE игнорировать BUILTINS.MAK).



Файл определения модуля


В данном разделе описываются файлы определения модуля и операторы, которые в них содержатся. Файл определения модуля обеспечивает для TLINK информацию о содержимом приложения Windows и

требованиях к системе:

Имена прикладной программы или библиотеки динамической

компоновки (DLL).

Идентификация типа прикладной программы как программы для

Windows или OS/2.

Перечисление импортируемых и экспортируемых функций.

Описание атрибутов сегментов кода и данных; позволяет вам

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

Размеры динамически распределяемой области и стека.

Обеспечивает фиктивный модуль программы.

Заметим, что утилита IMPLIB может использовать файл определения модуля для создания библиотеки импорта. Утилита IMPDEF может создавать файл определения модуля для использования его с

IMPLIB.



Файл подсказки


Файлы подсказки представляют собой обычные текстовые файлы,

содержащие параметры и/или имена файлов, которые обычно вводятся

после имени программы TLINK в командной строке. Однако, в отличие

от командной строки, файл подсказки может занимать несколько

строк текста. Вы можете разбить длинный список объектных файлов

или файлов библиотек на несколько строк, завершая одну строку

знаком "плюс" (+) и продолжая список на следующей строке. Когда

плюс возникает в конце строки, следуя непосредственно за одним из

параметров TLINK, в котором + используется для включения параметра (например, /ye+), плюс не рассматривается как символ продолжения строки.

Вы можете также начать каждый из четырех компонентов списка

на отдельных строках: объектные файлы, выполняемый файл, файл

карты отображения, библиотечные файлы. В этом случае вы должны

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

Чтобы проиллюстрировать эти возможности, предположим, что вы

пользуетесь следующей командной строкой:

tlink /c mainline wd ln tx,fin,mfin,work\lib\comm

work\lib\suррort

Вместо нее можно использовать файл подсказки, назвав его, например, FINRESP:

/c mainline wd+

ln tx,fin

mfin

worl\lib\comm work\lib\suррort

Теперь команду TLINK следует вводить следующим образом:

tlink @finresр

Заметьте, что имени файла должен предшествовать символ (@),

который указывает, что следующий файл является файлом подсказки.

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

представленную выше командную строку можно разбить на следующие

два файла подсказки:

Имя файла Содержимое

LISTOBJS mainline+
wd+
ln tx
LISTLIBS lib\comm+
lib\suррort

Теперь команду TLINK можно ввести в следующем виде:

tlink /c @listobjs,fin,mfin,@listlibs

Параметры командной строки переопределяют параметры, заданные в файле подсказки.



Файл TLINK.CFG


В файле конфигурации TLINK.CFG (или TLINK32.CFG) задаются

параметры, которые обычно указываются в командной строке (но не

имена файлов). Это позволяет не набирать каждый раз в командной

строке одни и те же параметры. TLINK ищет файл с именем TLINK.CFG

сначала в текущем каталоге, затем в каталоге, из которого эта

утилита загружалась.

TLINK.CFG является обычным текстовым файлом, содержащим

список допустимых параметров TLINK. В отличие от файла подсказки,

файл TLINK.CFG не может перечислять имена файлов для компоновки.



Файл WINSPCTR.LOG


Первая строка в отчете (отчетах) WINSPCTR.LOG показывает вам

дату и время возникновения исключительной ситуации. На второй

строке перечисляется:

тип исключительной ситуации;

имя модуля;

логический адрес;

физический адрес;

текущая задача во время особой ситуации.

Если указатель стека во время исключительной ситуации слишком мал, TOOLHELP.DLL автоматически переключает стек. Когда это

происходит, в конце второй строки файла регистрации выводится сообщение "Stack Switched".



Файлы конфигурации


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

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

пробелами. По умолчанию BCC использует файл конфигурации с именем

TURBOC.CFG, а BCC32 - BCC32.EXE. Параметры командной строки переопределяют параметры файлов конфигурации.



Файлы конфигурации


При запуске Turbo Debugger использует следующие файлы конфигурации, инициализации и сеанса:

- TDCONFIG.TD

- TFCONFIG.TDW

- TDCONFIG.TD2

- TDW.INI

- XXXX.TR

- XXXXTRW

- XXXX.TR2

Файлы конфигурации TDCONFIG.TD, TDCONFIG.TDW и TDCONFIG.TD2

создаются с помощью отладчиков TD, TDW и TD32 соответственно. Параметры, установленные в этих файлах, переопределяют параметры,

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

TDINST.EXE. TDWINST.EXE и TD32.EXE.

TDW.INI - это файл инициализации, используемый TDW.EXE и

TD2.EXE. Он содержит установки для используемого отладчиком видеодрайвера, расположение файла TDWINTH.DLL (динамически компонуемой библиотеки, применяемой для отладчик в Windows), и параметры удаленной отладчик для WRSETUP.EXE.

Программа установки отладчика помещает TDW.INI в основной

каталог Windows. В этой копии TDW.INI параметр видеодрайвера

([VideoDLL]) устанавливается в SVGA.DLL, а установка DebuggerDLL

указывает маршрут к TDWINTH.DLL. Полное описание TDW.INI можно

найти в файле TD_HELP!.TXT. Файлы с расширениями .TR, .TRW и .TR2

содержат параметры состояния сеанса отладчиков.

Когда вы запускаете Turbo Debugger, он ищет файлы конфигурации в следующей последовательности:

в текущем каталоге;

в каталоге, заданном в установке Turbo Directory программы

установки Turbo Debugger;

в каталоге, содержащем выполняемый файл отладчика.

Если Turbo Debugger находит файл конфигурации, то параметры,

заданные в этом файле, переопределяют встроенные по умолчанию установки. Если при запуске Turbo Debugger вы указываете параметры

командной строки, то они переопределяют соответствующие значения

по умолчанию и значения, заданные в файле конфигурации.

Для поддержки доступных типов видеоадаптеров и мониторов TDW

и TD32 используют различные типы видео-DLL. При инсталляции Turbo

Debugger запустите программу установки TDWINI.EXE, которая поможет вам выбрать или модифицировать используемые отладчиками видео-DLL. По умолчанию TDW и TD32 используют драйвер SVGA.DLL, который поддерживает большинство видеоадаптеров и мониторов. Подробнее об этом рассказывается в оперативном справочнике Help

программы TDWINI.EXE.

Кроме того, Turbo Debugger поддерживает в TD, TDW и в TD32

отладку с двумя мониторами. Для этого вам потребуется цветной монитор и видеоадаптер и монохромный монитор и видеоадаптер. При

отладке с двумя мониторами Turbo Debugger выводится на монохромном мониторе, а отлаживаемая программа - на цветном. Это позволяет видеть во время отладки вывод программы. Для загрузки TD или

TDW в режиме с двумя мониторами используйте параметр командной

строки -do. При работе с TD32 в Windows 32s нужно использовать

видеобиблиотеку SVGA.DLL. В файл TDW.INI в раздел [VideoOptions]

для этого нужно включить mono=yes. Для установки параметров видеоадаптера используйте утилиту TDWINI.EXE.



Файлы описания проектов


Файлы описания проекта автоматизируют процесс построения

приложений Windows при использовании IDE Borland C++. Файлы описания проектов с расширением .PRJ содержат информацию о том, как

построить конкретное приложение. Используя такое инструментальное

средство как администратор проектов, вы можете создавать и обслуживать файлы проектов, описывающие каждое из разрабатываемых

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

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

для автоматического построения приложения. Файлы описания проектов и администратор проектов - это эквиваленты формирующих файлов

и утилиты Make, но их легче обслуживать и использовать, чем формирующие файлы. Для установки параметров проекта можно использовать диалоговое окно Project Options интегрированной среды.



Файлы определения модуля


Файл определения модуля .DEF обеспечивает информацию о содержимом файла и требованиях к системе приложения Windows. Эта

информацию используется компоновщиком и включает в себя размер

динамически распределяемой памяти и стека, а также характеристики

кода и данных. Файл .DEF перечисляет также функции, которые должны быть доступными для других модулей (экспортируемые функции), и

используемые функции других модулей (импортируемые функции). Так

как компоновщик Borland имеет и другие способы получения этой информации, файл .DEF для него не обязателен. Файл .DEF содержит

несколько операторов. Перечислим некоторые из них:

Оператор Функция

NAME

Задает имя программы. Если нужно построить DLL,

используйте оператор LIBRARY. Каждый файл .DEF

обязательно должен иметь оператор NAME или

LIBRARY. Заданное имя должно совпадать с именем

выполняемого файла. WINDOWAPI идентифицирует

программу, как выполняемую программу Windows.

DESCRIPTION

Позволяет вам задать строку, описывающую ваше

приложение или библиотеку.

EXETYPE

Помечает файл, как выполняемый файл Windows (это

необходимо для всех выполняемых файлов Windows.

CODE

Описывает атрибуты выполняемого сегмента кода

Параметр PRELOAD указывает загрузчику, что при

загрузке приложения в память нужно загрузить эту

часть образа файла. MOVEABLE указывает, что

Windows может перемещать код в памяти.

HEAPSIZE

Задает размер локальной динамически распределяе-

мой памяти приложения.

STACKSIZE

Задает размер стека приложения. Для создания DLL

этот оператор использовать нельзя.

Кроме указанных в файлах .DEF используются операции EXPORTS

и IMPORTS. Оператор EXPORTS перечисляет функции в программе или

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

(экспортируемые функции или функции обратного вызова). Экспортируемые функции идентифицируются компоновщиком и вводятся в таблицу экспорта.

Чтобы избежать создания в файлах .DEF длинных секций

EXPORTS, в Borland C++ предусмотрено ключевое слово _export. Отмеченные этим ключевым словом функции будут идентифицироваться

компоновщиком и вводиться компоновщиком в таблицу экспорта.



Файлы подсказки


Если в командной строке задается множества файлов и параметров, поместите их в файл подсказки. Эти текстовые файлы позволяют

задать более длинную команду, чем это допускает операционная система. Чтобы использовать файл подсказки, дайте команду:

BCC @[маршрут]файл_подсказки.rsp

В команде можно задать несколько файлов подсказки (через

пробел).



Файлы сценариев ресурсов


Приложения Windows обычно используют ресурсы. Ресурсы - это

пиктограммы, меню, диалоговые окна, шрифты, курсоры, битовые массивы и ресурсы, определенные пользователем. Ресурсы определяются

в файле, который называется файлом сценария ресурса. Эти файлы

имеют расширение .RC.

Для использования ресурсов вам потребуется компилятор ресурсов Borland BRC (Borland Resource Compiler) или BRC32, который

компилирует файл .RC в двоичных формат. При компиляции ресурсов

создается файл .RES. Компоновщик TLINK или TLINK32 позволяет

затем связать файл .RES с генерируемым им файлом .EXE. При этом

файл .EXE отмечается также как выполняемый файл Windows.



Файлы, входящие в состав пакета Turbo Debugger


Имя файла Описание

DUAL8514.DLL Видео-DLL, которые поддерживают отладку с

двумя мониторами для мониторов 8514.

STB.DLL Видео-DLL, поддерживающая видео-адаптеры

STB.

TD.EXE Отладчик для отладки приложений DOS.
TDDEBUG.386 Этот драйвер используется TDW.EXE для доступа к специальным отладочным регистрами процессора 80386 (или старше).
TDHELP.TDH Справочных файл для TD.EXE.
TDKBDW16.DLL Файл поддержки для Windows 32s.
TDKBDW32.DLL Файл поддержки для Windows 32s.
TDREMOTE.EXE Драйвер, используемый в удаленной системе

для поддержки удаленной отладки в DOS.

TD32.ICO Пиктограмма, используемая для TD32.EXE.
TD32HELP.TDH Справочный файл для TD32.EXE.
TDVIDW16.DLL Файл поддержки для Windows 32s.
TDVIDW32.DLL Файл поддержки для Windows 32s.
TDW.EXE Выполняемая программа для отладки 16-разрядных программ Windows.
TDW.INI Файл инициализации, используемый TDW.EXE и
TD32.EXE. Он создается программой инсталляции и помещается в основной каталог Windows.
TDWGUI.DLL Видео-DLL, используемая для вывода окна отладчика TDW в Windows 3.х или TD32 в Windows 32s.
TDWHELP.TDH Справочный файл для TDW.EXE.
TDWINTH.DLL Поддерживающая DLL для TDW.EXE.
WREMOTE.EXE Драйвер для удаленной отладки в Windows.
TDINST.EXE Создает и модифицирует файл конфигурации

TDCONFIG.TD.

TDMEM.EXE Выводит на экран доступную память компьютера, включая дополнительную и расширенную.
TDRF.EXE Утилита передачи файлов, используемая для

передачи файлов в удаленную систему.

TD32INST.EXE Создает и модифицирует файл конфигурации

TD32 - TDCONFIG.TD32.

TDSTRIP.EXE Удаляет из файлов .EXE и .DLL используемую

отладчиком отладочную информацию (таблицу

идентификаторов) без перекомпоновки файлов.

TDSTRP32.EXE Удаляет из файлов .EXE и .DLL используемую

отладчиком отладочную информацию (таблицу идентификаторов) без перекомпоновки файлов.

TDUMP.EXE Выводит на экран структуру 16- или 32-раз-

рядных файлов .EXE, .DLL и .OBJ, а также

содержимое отладочную информацию об идентификаторах.

TDWINI.EXE Позволяет изменить и настроить параметры

видеодрайвера отладчика.

TDWINI.HLP Справочный файл для TDWINI.EXE.
TDWINST.EXE Создает и модифицирует файл конфигурации
TDCONFIG.EXE. Настраивает для TDW параметры

вывода и цвета экрана.

WRSETUP.EXE Файл конфигурации для утилиты WREMOTE -

драйвера удаленной отладки.

TD_ASM.TXT Файл с информацией по отладке программ

на Turbo Assembler, которая полезна также

при отладке программ со встроенным ассебмлером.

TD_HELP!.TXT Файл с ответами на общие вопросы. Среди

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

отличия между анализом выражений в Turbo

Debugger и компиляторах, отладка программ на нескольких языках др.

TD_HDWMP.TXT Файл с информации о настройке конфигурации

отладчика для использования аппаратных отладочных регистров.

TD_RDME.TXT Содержит последнюю информацию, отсутствую-

щую в руководстве.

TD_UTILS.TXT Описывает утилиты отладчика, работающие в

режиме командной строки: TDSTRIP, TDUMP,

TDWINST, TD32INST, TDSTRP32, TDMEM, TDMAP и

TDUMP32.

MAKEFILE Формирующий файл, используемый в примерах

программ.

TDWDEMO.BUG Исходный код примера программы с ошибками

(для отладки).

TDWDEMO.H Файл заголовка, используемых примером прог-

раммы.

TDWDEMO.ICO Пиктограмма примера программы.
TDWDEMO.IDE Файл проекта для примера программы.
TDWDEMO.RC Файл ресурса для примера программы.
S_PAINT.C Исходный код примера программы.
S_PAINT.EXE Пример программы.



Файлы-заголовки ObjectWindows


Файлы-заголовки находятся в подкаталоге OWL\INCLUDE и содержат описания функций классов и определений типов данных и констант.

Имя файла Определение класса Использование

applicat.h TApplication Управляет базовым повелением всех приложений ObjectWindows.
bitmapga.h TBitMapGadget Выводит на экран массив растровых изображений.
bitset.h TBitSet Устанавливает или сбрасывает один или более бит.
TCharSet Устанавливает или сбрасывает байты.
button.h TButton Создает различные виды

управляющих элементов типа командных кнопок.

buttonga.h TButtonGadget Создает реквизиты командных кнопок, которые можно выключать и включать щелчком "мыши".
cearray.h TCelArrayСоздает массив ячеек.
checkbox.h TCheckBoxПредставляет управляющий

элемент типа кнопки с независимой фиксацией.

chooseco.h TChooseColor Представляет режимное диалоговое окно с возможностью выбора цвета.
choosefo.h TChooseFont Представляет режимное диалоговое окно с возможностью выбора шрифта.
clipboar.h TClipboard Содержит функции, управляющие обработкой данных в буфере вырезанного изображения.
clipview.h TClipboardViewer Регистрирует TClipboardViewer как средство просмотра TClipboard.
color.h TColor Содержит функцию, используемую для упрощения

стандартной операции с цветом Windows.

combobox.h TComboboxСоздает в окне комбинированный блок или управляющий элемент комбинированного блока и класс TComboBoxData, который используется для передачи данных между управляющими элементами.
commdial.h TCommonDial Абстрактный базовый класс для объектов TCommonDialog.
compat.h Определяет служебные функции и константы ObjectWindows.
control.h Tcontrol Используется для создания в производных классов управляющих объектов.
controlb.h TControlBar Реализует полосу инструментальных средств, обеспечивающую мнемонический доступ к командным кнопкам.
contolg.h TControlGadget Позволяет помещать управляющие элементы в окно реквизитов.
dc.h TBandInfo, TClientDC,
TDC, TDesktopDC, TIC,
TDibDC, TPrintDC,
TScreenDC, TWindowDC
Включающие классы GDI DC, создающие объекты DC.
decframe.h TDecoratedFrame Создает клиентное окно, куда можно поместить "декорации".
decmdifr.h TDecoratedMDIFrame Создает объект рамки, поддерживающий "декорированные" дочерние окна.
dialog.h TDialog Создает режимное и безрежимное диалоговое окно с интерфейсными элементами.
TDialogAttr Содержит атрибуты диалогового окна.
dispatch.h   Определяет функции диспетчеризации, созданные для обработки сообщений Windows.
docmanag.h TDocManager Создает объект администратора документов, который работает с документами и шаблонами.
 TDocTemplate Создает шаблоны.
docview.h TDocument, TView,
TStream, TInStream,
TWindowView, TOutStream
Создает, уничтожает и посылает сообщения о просмотре документов.
edit.h TEdit Создает управляющий интерфейсный элемент редактирования.
editfile.h TEditFileСоздает окно редактирования файла.
editsear.h TEditSearch Создает управляющий элемент редактирования, отвечающий за команды поиска и замены.
editview.h TEditViewОболочка просмотра для TEdit.
except.h TXOwl Базовый класс обработки исключительных ситуаций.
TXOutOfMemory Описывает исключительную

ситуацию нехватки памяти.

TXCompatibility Описывает исключительную

ситуацию состояния.

TStatus Используется для обратной

совместимости.

filedoc.h TFileDocument Открывает и закрывает область просмотра документа.
findrepl.h TFindDialog,
TFindReplaceDialog
Эти классы создают и определяют атрибуты безрежимных диалоговых окон, отвечающих на команды поиска и замены.
floatfra.h TFloatingFrame Реализует в родительском

окне свободную рамку.

framewin TFrameWindow Управляет специфическим для окна поведением, таким как перемещение с помощью клавиатуры и обработка команд.
TMenuDesc Описывает строку меню.
gadget.h TGadget Создает объект реквизита, принадлежащий окну реквизитов и имеющий заданные атрибуты.
gedgetwi.h TGadgetWindow Обслуживает для окна список неперекрывающихся реквизитов.
gdibase.h TGdiBase Абстрактный базовый класс

для классов GDI.

gdiobjec.h TGdiObject Базовый класс GDI.
TPen, TBrush, TFont,
TBitMap, TPalette, TIcon,
TCusor, TDib, TRegion.
Эти классы специфицируют объекты GDI.
groupbox.h TGroupBoxСоздает групповой объект,

представляющий элемент группового блока в Windows.

inputdia.h TInputDialog Общее диалоговое окно.
keymodet.h TKeybardModeTracker Смешанный класс, созданный для отслеживания изменений режимов клавиатуры.
layoutco.h TLayoutConstraint Создает ограничения разметки.
layoutwi.h TLayoutMetrics Создает ограничения разметки, используемые для характеристик разметки в окне.
listbox.h TListBox Создает объект блока списка.
TListBoxData Используется для передачи контекста блока списка.
listview.h TListView Обеспечивает просмотр блоков списка.
mdi.h TMDIClient Управляет дочерними окнами MDI.
TMDIFrame Основное окно MDI-приложения.
mdichild.h TMDIChild Определяет поведение дочернего окна MDI.
menu.h TMenu, TPopupMenu, TSystemMenu Создает объекты меню.
messageb.h TMessageBar Реализует строку сообщения.
metafile.h TMetaFileBar Класс-оболочка для TMetaFileDC.
module.h TModule Определяет базовое поведение для библиотек и приложений ObjectWindows.
opensave.h TOpenSave Базовый класс для режимных диалоговых окон открытия и сохранения.
owlall.h   Включаемый файл для всех классов ObjectWindows.
owlcore.h   Включаемый файл для классов ядра ObjectWindows.
owldefs.h   Определения макрокоманд, используемых в программах ObjectWindows.
owlpch.h   Определения макрокоманд, данных и функций, используемых в программах ObjectWindows.
point TPoint, TSize, TRect Математические классы.
TDropinfo Поддерживает операции буксировки имени файла.
TProcInstance Класс поддержки Win16.
TPointer Обеспечивает надежную работу с указателями.
preview.h TPreviewPage Выводит страницу документа в окне предварительного просмотра.
printdia.h TPrintDialog Выводит диалог печати или режимное окно печати.
printer.h TPrinter Представляет устройство печати.
TPrintout Представляет печатаемый документ.
TPrinterAbortDlg Представляет диалоговое окно прерывания печати.
radiobut.h TRadioButton Создает управляющий элемент типа кнопки с зависимой фиксацией.
scrollba.h TScrollBar Представляет управляющий элемент типа вертикальной или горизонтальной полосы прокрутки.
TScrollBarData Содержит значения позиции указателя полосы прокрутки.
scroller.h TScroller Реализует автоматическую прокрутку окна.
signatur.h   Определяет шаблоны сигнатуры обработки сообщений, используемых функциями обработки событий ObjectWindows.
slider.h TSlider Определяет базовое поведение скользящих маркеров.
THSlider Горизонтальный скользящий маркер.
TVSlider Вертикальный скользящий маркер.
static.h TStatic Создает в окне статический управляющий элемент.
statusba.h TStatusBar Строит строку состояния.
textgadg.h TTextGadget Строит дополнительный текстовый объект.
tinycarp.h TTinyCaption Создает для окна меньшую строку заголовка.
toolbox.h TToolBox Создает инструментальный объект с заданным числом строк и столбцов.
validate.h TValidator Базовый класс проверки допустимости.
TPictureValidator Средство проверки допустимости картинки.
TFilterValidator Средство проверки допустимости фильтра.
TRangeValidator Средство проверки допустимости диапазона.
TLookupValidator Средство проверки допустимости преобразования.
TStringLookupValidator Средство проверки допустимости строки.
vbxctl.h TVbxControl Интерфейс для управляющих элементов VBX.
TVbxEventHandler Обрабатывает события от управляющих элементов VBX.
version.h   Определяет внутренний номер версии библиотеки ObjectWindows.
window.h TWindow Обеспечивает специфическое для окна поведение и инкапсулирует многие функции API.
windowev.h   Определяет обработчики событий и таблицы макрокоманд реакции на сообщения Windows.



Фатальные ошибки


Фатальные ошибки генерируются компилятором, компоновщиком и утилитой MAKE и приводят с немедленному прекращению процесса компиляции. Если такую ошибку генерирует компилятор или утилита MAKE, то файл .EXE не создается. Если фатальная ошибка генерируется компоновщиком, то файл .EXE может создаваться.

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



Флаги формата


Флаг Описание

skipws Пропускает при вводе пробелы и разделители.
left Выравнивание вывода влево.
right Выравнивание вывода влево.
internal Дополнение после знака или указателя основания.
dec Десятичное преобразование.
oct Восьмеричное преобразование.
hex Шестнадцатиричное преобразование.
showbase Показывает в выводе индикатор основания.
showpoint Показывает при выводе с плавающей точкой десятичную точку.
uppercase Преобразует шестнадцатиричный вывод в верхний

регистр.

showpos Выводит с положительными числами символ '+'.
scientific Добавляет к числам с плавающей точкой суффикс

с показателем степени (E).

fixed Для вывода чисел с плавающей точкой использует десятичную фиксированную точку.
unitbuf После включения выводит все потоки.
stdio После включения выводит stdout и stderr.



Формат вывода:


Класс (Модуль) Функции Стили

Ромбы после классов при получении окном любого сообщения

становятся черными. Это позволяет видеть, какие окна получают в

данный момент сообщения. Если дочерние окна данного окна в дереве

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

на активность дочерних окон.

"Класс" - это имя класса. Некоторые предопределенные классы

Windows имеют числовые номера. Например, в качестве имени класса

всплывающего меню используется число 32768. Для таких классов показывается как номер, так и имя, например, #32768:PopupMenu. Однако фактическое имя класса состоит только из числа. В формате MAKEINTRESOURCE используется также идентификатор ресурса.

"Модуль" - это имя выполняемого модуля (.EXE или .DLL), который зарегистрировал класс.

"Функция" - это адрес функции класса окна.

"Стили" представляют собой стили cs_ класса. Их имена совпадают с определениями cs_ в файле windows.h, но cs_ удаляется, и

имя указывается с различным регистром символов.



Формат вывода:


Описатель {Класс} Модуль Позиция "Заголовок"

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

потомками. Линии рисуются таким же образом, как в администраторе

файлов. Ромб после каждого окна показывает, имеет ли окно дочерние окна. Если он пустой, то дочерних окон нет. Если он содержит

символ +, то дочерние окна имеются, но они не показаны. Если он

содержит символ -, то имеются дочерние окна, и они выведены в

древовидной схеме (видим по крайней мере один уровень дочерних

окон, другие уровни могут быть скрыты).

"Описатель" - это описатель окна, возвращаемый CreateWindow.

"Класс" - это имя класса окна, описанного в области списка

классов.

"Модуль" - это имя выполняемого модуля (.EXE или .DLL), который создал окно. Строго говоря, это имя модуля, являющегося

владельцем сегмента данных, переданного как параметр hInstance

функции CreateWindow.

"Позиция" может либо не указываться, если окно скрыто, либо

это (x_Begin,y_Begin)-(x_End,y_End), если окно является видимым.

Для окон верхнего уровня это координаты экрана. Для порожденных

окон это координаты в области пользователя родительского окна,

которое используется в CreateWindow для создания порожденного окна.

"Заголовок" - это заголовок окна или текст, возвращаемый

функцией GetWindowText или сообщением WM_GETTEXT. Если заголовок

- это нулевая строка, то кавычки опускаются.



Формат вывода:


Описатель ["Заголовок" {Класс}] Сообщение Статус

"Описатель" - это описатель окна, получающего сообщение.

"Заголовок" - это заголовок окна. Если заголовок - это нулевая строка, то вместо него выводится имя класса (в фигурных скобках).

"Сообщение" - это имя сообщения, определенное в файле WINDOWS.H. Существуют также неописанные сообщения Windows, показанные символами в нижнем регистре. Номера неизвестных сообщений

(определенных пользователем) показываются как WM_USER+OxXXXX, если они больше или равны WM_USER, или WM_OxXXXX, если они меньше

WM_USER. Номера зарегистрированных сообщений (из RegisterWindowsMessage) показываются вместе с их зарегистрированными именами в

одиночных кавычках.

"Статус" представляет собой следующее:

Значение Dispatched показывает, что сообщение получено через DispatchMessage.

Значение Sent [from XXXX] показывает, что сообщение применяется через SendMessage. Если оно посылалось через другое

окно, то from XXXX показывает описатель окна. Если оно посылалось из того же окна, что и принимает сообщение, то

указывается fromself. Если сообщение поступает от Windows,

то часть from... опускается.

Return показывает, что сообщение было принято через

SendMessage и теперь возвращается.

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

это значение (в числовой форме или с более конкретной информацией по сообщению, например, wm_GETTEXT. Для посылаемых и диспетчеризуемых сообщений здесь показывается параметры сообщения. WinSight интерпретирует параметры таким

образом, чтобы получилась читаемая форма. Для сообщений,

имеющих связанные с ними структуры данных (например,

WM_CREATE) она перехватывает эти структуры и включает их в

вывод.



Форматирование ввода-вывода


Форматирование ввода и вывода определяется различными флагами состояний формата, перечисленными в классе ios. Эти состояния

определяются битами числа типа long int следующим образом:

public:

enum {

skipws = 0x0001, // пропуск пробельного символа на

// вводе

left = 0x0002, // вывод с левым выравниванием

right = 0x0004, // вывод с правым выравниванием

internal = 0x0008, // заполнитель после знака или

// указателя системы счисления

dec = 0x0010, // десятичное преобразование

oct = 0x0020, // восьмиричное преобразование

hex = 0x0040, // шестнадцатиричное преобразование

showbase = 0x0080, // показать на выходе указатель

// системы счисления

showpoint = 0x0100, // показать позицию десятичной точки

// (на выходе)

uppercase = 0x0200, // вывод шестнадцатиричных значений

// буквами верхнего регистра

showpos = 0x0400, // показать знак "+" для

// положительных чисел

scientific = 0x0800, // использовать запись чисел с плава-

// ющей точкой с выводом экспоненты Е

// например, 12345E2

fixed = 0x1000, // использовать запись чисел с плава-

// ющей точкой типа 123.45

unitbuf = 0x2000, // сброс на диск всех потоков

// после вставки

stdio = 0x4000, // сброс на диск stdout и stderr после

// вставки

};

Эти флаги читаются и устанавливаются функциями-элементами

flags, setf и unsetf.



Функции библиотеки graphics


Графические функции Borland C++ делятся на несколько категорий:

функции управления графической системой;

функции черчения и заполнения;

функции манипулирования экранами и графическими окнами;

функции вывода текстов;

функции управления цветами;

функции обработки ошибок;

функции запроса состояния.



Функции доступа к данным


TDocument предусматривает ряд функций для доступа к данным.

Вы можете обращаться к данным в простом последовательном потоке

или тем способом, который зададите в производных классах.

TDocument предусматривает две функции InStream и OutStream,

которые возвращают указатель на TInStream и TOutStream. Базовые

версии этих функций не выполняют никаких действий и возвращают 0.

В производном классе их нужно переопределить, чтобы они возвращали указатель на объект. Таким образом вы можете обеспечить в

классе документа доступ к потокам.

TInStream и TOutStream - это абстрактные базовые классы,

производные от isteam и ostream класса TStream. TStream обеспечивает минимальные функции для связи потока с документом, а isteam

и ostream - это стандартные потоки С++. Из TInStream и TOutStream

нужно создать производные потоковые классы, специфические для

приложения. Эти классы имеют функции для работы с потоками.

Каждый документ поддерживает список открытых потоков, который обновляет при добавлении или удалении потоков. В начале этого

списка находится элемент данных StreamList класса TDocument, который указывает первый поток в списке или содержит 0. Каждый объект TStream в списке имеет функцию-элемент NextStream, которая

указывает на следующий поток в списке.

Потоки могут обеспечивать только простой последовательный

доступ к данным. Если документы содержат файлы мультимедиа, таблицы баз данных или другие сложные данных, то вам потребуются более развитые методы доступа. Для этой цели в TDocument имеется

еще две функции доступа - Open и Close, которые вы можете переопределить и задать нужное поведение при открытии и закрытии. На

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

насколько это требуется.

Close обеспечивает несколько больше функциональных возможностей. Эта функция проверяет существующие дочерние объекты документа и перед закрытием документа пытается закрыть их все. Данная

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

TDocument имеет также ряд функций, позволяющих вам защитить

данные. IsDirty проверяет, был ли документ модифицирован. IsOpen

проверяет состояние документа (открыт он или нет) или наличие потоков в списке. Commit сохраняет изменения данных в памяти. Revert выполняет действие, обратное Commit.



Функции элементы (методы)


Как вы уже видели раньше, классы С++ могут содержать в качестве

своих элементов не только данные, но и функции элементы. Функция эле

мент - это функция, объявленная внутри определения класса и тесно

связанная с типом этого класса. В нашем примере - это операции которые выполняются в сберегательных банках. Наш объект sber_bank имеет

функции элементы deposite (вкладывать) и withdraw (снимать) деньги.

sber_bank

Объект сбербанк

< deposit << Вклад денег

$$$ < >

<

Данные > withdraw >> Снятие денег

Функции элементы

Наглядное представление функции элемента withdraw() приводится

ниже:

Селектор

Определяемый класс Имя функции элемента

Возвращаемый тип Аргумент

v v v v v

double sber_bank::withdraw(double bucks)

{

big_bucks -= bucks;

if (big_bucks < 0.0) {

printf("К сожалению, товарищ, у вас нет таких денег!\n");

big_bucks -= 10.0; // Штрафная санкция

}

return big_bucks;

}

Обратите особое внимание на использование операции селектор области действия '::' между определяемым классом и функцией элементом.

Имя класса sber_bank используется для указания компилятору, к какому

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

withdraw, принадлежащие другим классам). При внутреннем определении

селектор '::' не потребуется, так как и так ясно, что withdraw принадлежит классу sber_bank.

По аналогии, при обращении функций к элементам своего объекта,

селектор '.' лишний:

double sber_bank::withdraw(double bucks)

{

Обращение к данным своего объекта

v (не указывается принадлежность

big_bucks -= bucks; объекту - sber_bank.)

if (big_bucks < 0.0) {

printf("К сожалению, товарищ, у вас нет таких денег!\n");

big_bucks -= 10.0; // Штраф за перерасход

}

return big_bucks;

}



Функции в DLL


Утилита IMPDEF создает редактируемый исходный файл, который

перечисляет все экспортные функции в DLL. Вы можете отредактировать этот файл .DEF так, чтобы он содержал только те функции, которые вы хотите сделать доступными для нужной прикладной программы, а затем выполнить IMPLIB для отредактированного файла .DEF. В

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

DLL.

Например, пусть вы определяете DLL, которая предоставляет

функции для использования различными прикладными программами.

Каждая экспортируемая функция в DLL определяется с помощью оператора _exрort. Теперь, если все прикладные программы используют

все экспортируемые функции DLL, вы можете просто использовать

IMPLIB для создания одной библиотеки импорта для DLL и поставлять

эту библиотеку импорта с DLL. Библиотека импорта может быть скомпонована с любыми прикладными программами, исключая таким образом

необходимость перечисления для каждой прикладной программы каждой

используемой ей функции DLL в секции IMPORT файла определения модуля.

Теперь, пусть нужно передать некоторую часть экспортируемых

функций DLL отдельной прикладной программе. В идеале требуется

скомпоновать специальную библиотеку импорта с этой прикладной

программой - библиотеку импорта, которая предоставляет только

подмножество функций, которые будут использоваться прикладной

программой. Все другие экспортируемые функции в DLL для клиентной

прикладной программы должны быть скрыты.

Для создания библиотеки импорта, которая удовлетворяет этим

условиям, выполните IMPDEF для откомпилированной и скомпонованной

DLL. Утилита IMPDEF создаст файл определения модуля, который содержит в секции EXPORT перечисление всех экспортируемых функций

DLL. Вы можете редактировать этот файл определения модуля, удаляя

компоненты секции EXPORTS для тех функций, которые вы не хотите

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

определения модуля. Результатом будет библиотека импорта, которая

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

Утилита TLIB: турбо библиотекарь

Почему следует использовать библиотеки объектных модулей

Командная строка утилиты TLIB

Использование файлов подсказки

Создание расширенного словаря: параметр /E

Задание размера страницы: параметр /P

Различимость регистра символов в идентификаторе: параметр /C

Удаление записей-комментариев: параметр /O

Список операций

Примеры



Функции запроса состояния


Ниже приводится краткое изложение функций запроса состояния

графического режима:



Функции запроса состояния графического режима


Функция Возвращаемое значение

getarccoords Возвращает информацию о координатах, заданных

в последнем вызове arc или ellipse.

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

цвете заполнения.

getgraphmode Возвращает текущий графический режим.
getlinesettings Возвращает текущие стиль, шаблон и толщину

линии.

getmaxcolor Возвращает максимально допустимое на текущий момент значение элемента изображения.
getmaxmode Возвращает максимально допустимый номер режима для текущего драйвера.
getmaxx Возвращает текущее разрешение по оси x.
getmaxy Возвращает текущее разрешение по оси y.
getmodename Возвращает имя данного режима драйвера.
getmoderange Возвращает диапазон режимов для данного

драйвера.

getpalette Возвращает текущую палитру и ее размер.
getpixel Возвращает цвет элемента изображения в (x,y).
gettextsettings Возвращает текущий шрифт, направление, размер

и способ выравнивания текста.

getviewsettings Возвращает информацию о текущем графическом

окне.

getx Возвращает координату x текущей позиции (CP).
gety Возвращает координату y текущей позиции (CP).

В каждой из категорий графических функций Borland C++ имеется хотя бы одна функция запроса состояния. Эти функции упоминались при рассмотрении соответствующих категорий и также рассматриваются здесь отдельно. Каждая из графических функций запроса

состояния Borland C++ имеет имя вида "get что-то" (за исключением

категории функций обработки ошибок). Некоторые из них не воспринимают никаких аргументов и возвращают единственное значение,

представляющее собой искомую информацию. Прочие считывают указатель структуры, определяемой в файле graphics.h, заполняют эту

структуру соответствующей информацией и не возвращают никаких




значений.

Функциями запроса состояния категории управления графической

системы являются getgraphmode, getmaxmode и getmoderange. Первая

из них возвращает целое число, определяющее текущий графический

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

этого драйвера, а третья возвращает диапазон режимов, поддерживаемых данным графическим драйвером. getmaxx и getmaxy возвращают

соответственно максимальные экранные координаты x и y для текущего графического режима.

Функциями запроса состояния категории вычерчивания и заполнения являются функции getarccoords, getaspectratio, getfillpattern и getlinesettings. Функция getarccoords заполняет структуру, содержащую координаты, которые использовались при последнем вызове функций arc или ellipse. Функция getaspectratio сообщает текущий коэффициент сжатия, используемый графической системой для того, чтобы окружности выглядели круглыми. Функция getfillpattern

возвращает текущий определяемый пользователем шаблон заполнения.

Функция getfillsettings заполняет некоторую структуру текущим

шаблоном и цветом заполнения. Функция getlinesettings заполняет

структуру текущим стилем линии (сплошная, пунктир и т.д.), толщиной (обычная или увеличенная), а также шаблоном линии.

Функциями запроса состояния категории манипулирования графическим окном являются getviewsettings, getx, gety и getpixel.

После того, как графическое окно определено, вы можете найти его

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

информацией некоторую структуру. Функции getx и gety возвращают

(относительно графического окна) x- и y-координаты текущей позиции (CP). Функция getpixel возвращает цвет указанного элемента изображения.

Функция запроса состояния категории вывода текста в графическом режиме имеется только одна, и притом всеобъемлющая, - gettextsettings. Эта функция заполняет структуру информацией о текущем символьном шрифте, направлении вывода текста (по горизонтали

или по вертикали), коэффициенте увеличения символов, а также виде

выравнивания (как для горизонтально, так и для вертикально-ориентированных текстов).

Функциями запроса состоянии категории управления цветом Borland С++ являются функция getbkcolor, возвращающая текущий цвет

фона, функция getcolor, возвращающая текущий цвет вычерчивания и

функция getpalette, заполняющая структуру, которая включает в себя размер текущей палитры и ее содержимое. Функция getmaxcolor

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

для текущего графического драйвера и режима (размер палитры -1).

И наконец, функции getmodename и getdrivername возвращают

имя заданного режима драйвера и имя текущего графического драйвера, соответственно.


Функция Error


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

какой должна быть вводимая информация.

Хотя большинство производных объектов переопределяют Error,

ее не следует вызывать непосредственно. Valid вызывает Error, если IsValid возвращает False.



Функция IsValid


Виртуальная функция-элемент IsValid вызывается функцией Valid, которая передает IsValid проверяемую строку текста. IsValid

возвращает True, если строка представляет допустимые данные. IsValid выполняет фактическую проверку допустимости, так что при

создании собственных объектов проверки допустимости вам потребуется переопределить эту функцию. Обратите внимание, что IsValid

не вызывается непосредственно. Это делается через Valid, которая

вызывает Error, если IsValid возвращает False. Это позволяет отделить проверку допустимости от сообщения об ошибке.



Функция IsValidInput


Когда редактируемый управляющий элемент распознает нажатие

клавиши, он вызывает функцию-элемент IsValidInput, обеспечивающую

допустимость введенного элемента. По умолчанию эта функция всегда

возвращает True, то есть воспринимаются все клавиши, но в некоторых производных объектах проверки допустимости IsValidInput отфильтровывает нежелательные символы. Эта функция имеет два параметра. Первый параметр указывает на текущий проверяемый текст

ввода. Второй указывает, нужно ли заполнять строку ввода перед

проверкой допустимости (это используется только в TPXPictureValidator).



Функция main.


Аргументы функции main (argc, argv и env) всегда передаются

функции main подпрограммой инициализаци и Borland С++.

argc (тип integer) - число аргументов командной строки.

argv - массив указателей на строки (char *[]). В версиях

DOS 3.x argv[0] - полное (т.е. включая маршрут доступа)

имя запускаемой программы. argv[x] - параметр, набранный

в командной строке после функции (порядковый номер - x).

env - также массив указателей на строки. Каждый элемент

env[] содержит строку вида ENVVAR = value. Аргумент env

доступен также через глобальную переменную environ. argc и

argv также доступны через глобальные переменные _argc и

_argv.

Для использования соглашения о связях Паскаля можно использовать ключевое слово cdecl. Например:

cdecl main(int argc, char *argv[], char *envp[])



Функция set_new_handler (new.h)


Устанавливает функцию, вызываемую, когда operator new() или

operator new[] не могут выделить запрошенную память. По умолчанию

операции new генерируют в этом случае исключительные ситуации

xalloc. Это поведение можно переопределить вызовом для установки

нового обработчика set_new_handler. Для возврата к обычной версии

используйте set_new_handler(0).

Заданный пользователем обработчик должен выполнять возврат

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

xalloc и вызывать функции abort или exit.



Функция set_termionate (except.h)


Позволяет вам установить функцию, определяющую поведение

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

terminate_function. Такая функция не имеет аргументов и возвращает void.

По умолчанию указанная исключительная ситуация возникает при

вызове в программе функции terminate. Обычно это приводит к вызову abort. Затем программа завершается с сообщением "Abnormal

program termination". Если вы хотите вызывать в terminate другую

функцию, то можете ее определить. Такая функция называется функцией завершения и позволяет вам выполнять действия, не реализованные в abort. Функция завершения не должна возвращаться в terminate.



Функция set_unexpected (except.h)


Позволяет установить функцию, определяющую поведение программы при возникновении исключительной ситуации, не описанной в

списке спецификаций. Действия описываемой функции зависят от типа

функции. Функция типа unexpected_function - это функция без аргументов, возвращающая void.

По умолчанию непредвиденные исключительные ситуации приводят

к вызову unexpected. Если определена unexpected_func, то unexpected вызывает далее unexpected_func, куда и передается управление

программой. В противном случае вызывается terminate. По определению unexpected_func не возвращает управление в unexpected.



Функция terminate (except.h)


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

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

списке спецификаций. Если вы не хотите, чтобы программа завершалась вызовом abort, то можете определить собственную функцию.



Функция unexpected (except.h)


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

unexpected, которая по умолчанию вызывает определенную пользователем функцию, зарегистрированную с помощью set_unexpected. Если

такой зарегистрированной функции нет, то вызывается terminate.

Функция unexpected не возвращает управления, однако может генерировать исключительную ситуацию.



Функция Valid


Функция-элемент Valid вызывается соответствующим объектом

редактируемого управляющего элемента для проверки допустимости

вводимых данных. Аналогично функции CanClose для интерфейсных

объектов Valid возвращает True только если переданная ей строка

содержит допустимые данные.

При использовании объектов проверки допустимости с редактируемыми управляющими элементами переопределять или вызывать функцию Valid объекта проверки допустимости вам не нужно. Здесь достаточно наследуемой версии Valid. По умолчанию Valid возвращает

True, если возвращает True функция-элемент IsValid. В противном

случае она вызывает функцию Error для уведомления пользователя об

ошибке и возвращает False.



Функция WinMain


В качестве основной точки входа приложения Windows вы должны

предусмотреть функцию WinMain. Некоторые приложения (например,

ObjectWindows) инкапсулируют эту точку входа. В WinMain передаются следующие параметры:

WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,

LPSTR lpCmdLine, int nCmdShow)

Параметр hInstance - это описатель экземпляра приложения.

Каждый экземпляр приложения Windows имеет уникальный описатель

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

Параметр hPrevInstance - это описатель предыдущего экземпляра данного приложения. hPrevInstance равно NULL, если это первый

экземпляр (в Win32 это значение всегда равно 0).

lpCmdLine представляет собой указатель (в 16-разрядной

Windows указатель типа far) на командную строку с завершающим нулем. Это значение может задаваться при вызове приложения из администратора программ или через вызов WinExec.

nCmdShow - это целое значение, определяющее, как выводить на

экран окно приложения (например, в виде пиктограммы).

Возвращаемое WinMain значение в данный момент Windows не используется, однако оно может быть полезным при отладке.



- G -


General error


Сообщение об ошибке утилиты TLINK

(общая ошибка)

TLINK выводит максимум информации о том, что происходит во

время неизвестной фатальной ошибки.

General error in library file имя_файла in module модуль near module file offsef Oxyyyyyyyy


Сообщение об ошибке утилиты TLINK

(общая ошибка в библиотечном файла в модуле модуль, смещение

Oxyyyyyyyy)

TLINK выводит максимум информации о том, что происходит во

время неизвестной фатальной ошибки.

General error in module модуль near module file offsef Oxyyyyyyyy


Сообщение об ошибке утилиты TLINK

(общая ошибка в модуле модуль, смещение Oxyyyyyyyy)

TLINK выводит максимум информации о том, что происходит во

время неизвестной фатальной ошибки.

Global anonimous union not static


Сообщение об ошибке этапа компиляции

(глобальное анонимное объединение не является статическим)

В С++ глобальное анонимное объединение на уровне файла должно быть статическим (static).

Goto bypassed initialization of local variable


Сообщение об ошибке этапа компиляции

(конструкция goto обошла инициализацию локальной переменной)

В С++ недопустимо любым способом обходить инициализацию локальной переменной. В данном случае в конструкции goto управление

передается за точку инициализации локальной переменной.

Goto into exception handler is not allowed


Сообщение об ошибке этапа компиляции

(переход в обработчик особой ситуации не допускается)

Недопустимый переход в блок try или подключенный к нему обработчик особой ситуации.

Goto statement missing label


Сообщение об ошибке этапа компиляции

(отсутствует метка в операторе goto)

За ключевым словом goto должен следовать идентификатор.

Group группа exceeds 64К


Сообщение об ошибке утилиты TLINK

(группа "группа" превышает 64К)

При комбинировании сегментов размер группы превысил 64К.

Group overflowed maximum size: группа


Сообщение об ошибке этапа компиляции

Общий размер сегментов в группе (например, DGROUP) превысил

64.

Group группа_1 overlaps group группа_2


Предупреждение утилиты TLINK

(группа_1 перекрывает группу_2)

Это означает, что TLINK обнаружил вложенные группы. Данное

предупреждение возникает только при использовании оверлеев или

при компоновке программ Windows.



Азы С++


Азы С++.

Си с классами

Поддержка объектно-ориентированного программирования

Возможности Borland C++ версии 4.0

Что же такое объекты?

Классы - как строительные блоки

Создание новых классов sber_bank

Защита данных

Конструкторы и деструкторы

Конструкторы

Вызов конструкторов

Деструкторы

Вызов деструкторов

Конструкторы, деструкторы и динамическая память

Функции элементы (методы)

Вызов функций-элементов

Передача значений в C++

Введение в классы

Элементы классов

Инкапсуляция или скрытие данных

Скрытие данных в потомках

Наследование

Иерархия классов

Множественное наследование

Выгода от наследования

Расширяемость кода

Пример наследования

Класс Circle

Класс Cylinder

Класс Rectangle

Класс Box3d

Странные вызовы конструктора

Несколько слов о проектировании иерархии классов

Обзор и важные концепции

Полиморфизм

Связывание функций

Ранее связывание с помощью переопределяемых функций

Переопределение операций

Позднее связывание с использованием виртуальных функций

Связывание значения с функциями-элементами

Изучение ООП на маленьком примере

Алгоритм декомпрессии для выполнения группового кодирования

Начнем с алгоритма декомпрессии на языке Cи

Улучшение алгоритма

Наш декомпрессор в стиле фильтра

Ниже описан главный фрагмент нашей программы декомпрессии

Достижение больших выгод от объектно-ориентированного стиля

Более легкий подход в Borland С++

На передовой Borland С++

Конструктор - декомпрессор

Приведем полный текст программы

Переменные alias

Использование переменных alias, как параметров

Переменные-ссылки, используемые в качестве аргументов

Использование ключевого слова void.

Аргументы функции элемента, принимаемые "по умолчанию"

Прототипы функций

Динамическое использование памяти (операции new и delete)

Потоки ввода-вывода

Встроенные функции

Виртуальные функции элементы

Пример класса с виртуальными функциями элементами

Объявление виртуальных функций элементов

Когда тип не проверяется

Дружественные функции

Заключение

Назад | Содержание | Вперед



и инструментальные средства режима командной


Инсталляция и настройка Borland С++

Этапы инсталляции

Запуск Borland С++

Настройка конфигурации IDE

Установка параметров IDE

Параметры редактора

Окно сообщений

Просмотр элементов исходного кода

Инструментальные средства, работающие в режиме командной строки

DPMI и инструментальные средства режима командной строки

MAKESWAP.EXE

Администратор режима выполнения и инструментальные средства

Выполнение в IDE других программ

Администратор проектов

Создание проекта

Построение проекта

Редактирование дерева проекта

Использование Source Pool

Параметры проекта

Трансляторы

Задание транслятора

Задание средств просмотра и инструментальных средств

Компиляция

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

Использование компиляторов, работающих в режиме командной строки

Параметры компиляции

Последовательность поиска файлов в каталогах

Построение приложений с помощью AppExpert

Использование ClassExpert

Утилита WinSight

Утилита WinSpector

Компоновщик TLINK

Компоновщик ресурсов RLINK

Утилита TLIB: турбо библиотекарь

Утилита MAKE

Сообщения об ошибках

Назад | Содержание | Вперед


Справочная информация по программированию


Справочная информация по программированию

Ключевые слова Borland C++

Ключевые слова Borland C++

Расширения Borland C++ по сравнению с Си стандарта ANSI

Ключевые слова, специфические для C++

Регистровые псевдопеременные Borland C++

Идентификаторы

Константы

Описание операций

Описание операций

Унарные операции

Бинарные операции

Пунктуаторы

Ссылки

Ссылки

Предопределенные макрокоманды

Что такое поток?

Библиотека iostream

Потоковый вывод

Основные типы

Форматирование ввода-вывода

Манипуляторы

Манипуляторы потока

Потоковый ввод

Библиотечные классы Borland

Библиотечные классы Borland

Каталоги контейнеров

Библиотека INCLUDE

Библиотека классов постоянных потоков

Программирование для Windows

Файлы сценариев ресурсов

Файлы определения модуля

Библиотеки импорта

Функция WinMain

Начальный и завершающий код

Параметры экспорта и импорта

Параметры -W и -WC

Параметр -WE

Параметр -WS

Параметр -WSE

Параметры -WD и -WCD

Параметры -WDE и -WCDE

Выводы

Файлы описания проектов

Файлы описания проектов

Администратор динамически распределяемой области памяти

32-разрядное программирование в Windows

32-разрядное программирование в Windows

Win32

Написание переносимого кода Windows

Типы UINT и WORD

WINAPI и соглашения по вызову CALLBACK

Данные сообщения и обработка сообщений

Переносимость системных вызовов DOS

Общие сообщения об ошибках и предупреждения компилятора

Построение выполняемых файлов Win32

Библиотеки DLL

Стандарты ANSI, зависящие от реализации

Сообщения, генерируемые только для Win32

Назад | Содержание | Вперед



Справочник по работе с DOS


Справочник по работе с DOS

Управление памятью в DOS

Управление памятью в DOS

Нехватка памяти при выполнении

Модели памяти

Регистры процессора

Сегментация памяти

Указатели

Модели памяти

Модели памяти

Сегментация для модели памяти tiny

Сегментация для модели памяти small

Сегментация для модели памяти medium

Сегментация для модели памяти compact

Сегментация для модели памяти large

Сегментация для модели памяти Huge

Модели памяти

Программирование со смешанными моделями и модификаторы адресации

Программирование со смешанными моделями и модификаторы адресации

Указатели сегментов

Объявление дальних объектов

Объявление ближних или дальних функций

Объявление указателей near, far или huge

Создание указателя данного адреса "сегмент:смещение"

Использование библиотечных файлов

Компоновка смешанных модулей

Оверлеи (VROOMM)

Оверлеи (VROOMM)

Работа программ с оверлеями

Распределение памяти для оверлейных структур

Оптимальное использования оверлеев Borland C++

Требования

Оверлеи и обработка исключительных ситуаций

Использование оверлеев

Разработка программ с оверлеями

Отладка оверлейных программ

Внешние подпрограммы в оверлеях

Свопинг

Математические операции

Математические операции

Операции ввода-вывода с плавающей точкой

Сопроцессор

Эмуляция платы 80х87

Использование кода 80х87

Получение кода без операций с плавающей точкой

Параметр быстрых вычислений с плавающей точкой

Переменная операционной среды 87

Регистры и сопроцессор 80х87

Отмена обработки особых ситуаций для операций с плавающей точкой

Математические операции с комплексными числами

Использование двоично-десятичной арифметики (BCD)

Преобразования двоично-десятичных чисел

Число десятичных знаков

Видео-функции

Видео-функции

Видеорежимы

Текстовые и графические окна

Программирование в графическом режиме

Функции библиотеки graphics

Управление графической системой

Черчение и заполнение

Манипулирование экраном и графическими окнами

Текстовый вывод в графическом режиме




Управление цветом
Элементы изображения и палитры
Цвет фона и вычерчивания
Управление цветом на CGA
Управление цветом для EGA и VGA
Обработка ошибок в графическом режиме
Функции запроса состояния
Библиотеки DOS

Библиотеки DOS
Библиотеки исполняющей системы
Библиотеки поддержки DOS
Графические подпрограммы
Интерфейсные подпрограммы
Подпрограммы управления памятью
Разные подпрограммы
Глобальные переменные DOS

Глобальные переменные DOS
_heaplen (dos.h)
_ovrbuffer (dos.h)
_stklen (dos.h)

Установка точек останова по изменению


Введение

Замечания по терминологии

Установка и настройка Turbo Debugger

Установка и настройка Turbo Debugger

Файлы конфигурации

Меню Options

Переключатель Integer Format

Выполнение программ с отладчиком



Выполнение программ с отладчиком

Подготовка программ для отладки

Отладка программ ObjectWindows

Запуск отладчика

Выполнение отладчика

Загрузка программы в отладчик

Управление выполнением программы

Меню Run

Прерывание выполнения программы

Обратное выполнение

Завершение программы

Выход из отладчика

Интерфейс отладчика



Интерфейс отладчика

Работа с меню

Окна Turbo Debugger

Окна меню View

Специальные средства Turbo Debugger

Текстовое окно Get Info

Команда Attach

Команда OS Shell

Получение справочной информации

Оперативная помощь

Дерево меню

Точки останова



Точки останова

Окно Breakpoints

Установка простых точек останова

Установка условных точек останова

Установка точек останова по изменению памяти

Установка глобальных точек останова

Аппаратные точки останова

Действия, выполняемые по точкам останова

Задание условий и действий

Группы точек останова

Удаление точек останова

Точку останова в шаблонах С++

Установка точек останова в нитях

Окно Log



Окно Log

Анализ и модификация данных

Окно Watches



Окно Watches

Меню окна Watches

Окно Variables



Окно Variables

Меню окна Variables

Окна Inspector



Окна Inspector

Меню окон Inspector

Окно Stack



Окно Stack

Команда Evaluate/Modify

Команда Function Returns

Вычисление выражений



Вычисление выражений

Механизм вычисления выражений Turbo Debugger

Типы выражений

Выражения с побочными эффектами

Спецификаторы формата

Переопределение области действия

Просмотр и модификация файлов

Команды меню окна Module

Просмотр других файлов

Команды окна File

Отладка на уровне ассемблера



Отладка на уровне ассемблера

Окно CPU

Область кода

Область регистров и флагов

Область флагов

Область дампа

Область стека

Область селектора

Окно Dump

Окно Registers

Отладка в Windows




Отладка в Windows
Регистрация сообщений
Задание действия по сообщению
Отладка библиотек DLL
Выполнение DLL по шагам
Доступ к DLL и исходному коду модулей
Отладка кода запуска DLL
Отладка мультинитевых программ
Трассировка исключительных ситуаций операционной системы

Трассировка исключительных ситуаций операционной системы
Задание пользовательских исключительных ситуаций
Память и списки модулей
Отладка объектно-ориентированных программ

Отладка объектно-ориентированных программ
Окно Hierarchy
Окна Class Inspector
Окна Object Inspector
Отладка резидентных программ и драйверов устройств

Отладка резидентных программ и драйверов устройств
Что такое резидентная программа?
Отладка резидентной в памяти программы
Что такое драйвер устройства?
Отладка драйвера устройства
Удаленная отладка

Удаленная отладка
Требования к программному и аппаратному обеспечению
Запуск сеанса удаленной отладки

Справочная библиотека по языку Borland


Справочная библиотека по языку Borland C++.

Справочная библиотека по функциям

Функция main

Соглашения принятые в справочнике по функциям Borland С++

Функции от a до b

Функции на с

Функции на d

Функции от e до f

Функции от g до h

Функции от i до l

Функции от m до o

Функции от p до r

Функции на s

Функции от t до z

Справочная библиотека по функциям работающим только в DOS

Справочная библиотека по графическим функциям для DOS

Глобальные переменные и классы

Глобальные переменные

Потоковые классы С++

Постоянные потоковые классы и макрокоманды

Контейнерные классы С++ от TMArray... до TIHash...

Контейнерные классы С++ от TMList... до TShould...

Математические классы С+

Диагностические макрокоманды

Назад | Содержание | Вперед


Наставление по Borland ObjectWindows for


Наставление по Borland ObjectWindows for C++ 2.0

Объекты приложений

Объекты приложений

Инициализация приложений

Обработка сообщений приложения

Закрытие приложений

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

Интерфейсные объекты



Интерфейсные объекты

Назначение интерфейсных объектов

Объект TWindow

Создание интерфейсных объектов

Отображение интерфейсного элемента

Характеристики объекта

Характеристики окна

Уничтожение интерфейсных объектов

Родительские и дочерние интерфейсные элементы

Регистрация оконных классов

Обработка событий

Описание и определение таблиц реакции

Определение записей таблицы реакции

Оконные объекты



Оконные объекты

Использование оконных объектов

Построение оконных объектов

Установка атрибутов создания

Создание интерфейсных элементов окна

Окна схемы

Окна-рамки

Построение объектов TFrameWindow

Модификация окон-рамок

Декорированные окна-рамки

Построение объектов декорированных окон-рамок

Добавление декорирующих элементов

Окна MDI

Приложения MDI

Построение приложений MDI

Объекты меню



Объекты меню

Построение объектов меню

Модификация объектов меню

Опрос объектов меню

Использование объектов меню

Объекты диалоговых блоков



Объекты диалоговых блоков

Использование объектов диалоговых блоков

Построение объекта диалогового блока

Выполнение диалогового блока

Закрытие диалогового блока

Использование диалогового блока в качестве основного окна

Манипуляция управляющими элементами в диалоговых блоках

Связь интерфейсных объектов с управляющими элементами

Использование диалоговых блоков

Использование общих диалоговых блоков

Диалоговые блоки выбора цвета

Диалоговые блоки выбора шрифтов

Диалоговые блоки открытия файлов

Диалоговые блоки сохранения файла

Диалоговые блоки поиска и замены

Диалоговые блоки печати

Объекты Doc/View



Объекты Doc/View

Совместная работа документов и отображаемых элементов

Документы

Отображаемые элементы

Связь документов с классами отображаемых элементов

Управление Doc/View



Шаблоны документов
Использование администратора документа
Построение администратора документа
Обработка событий TDocManager
Создание класса документа
Функции доступа к данным
Закрытие документа
Расширение функциональных возможностей документа
Работа с администратором документа и отображаемыми элементами
Создание класса отображаемого элемента
Построение TView
Добавление функциональных возможностей
Добавление данных, выводимых в отображаемых элементах
Закрытие отображаемого элемента
Обработка событий Doc/View
Характеристики Doc/View
Значения характеристик и их имена
Доступ к информации о характеристике
Объекты управляющих элементов

Объекты управляющих элементов
Классы управляющих элементов
Построение и уничтожение объектов управляющих элементов
Взаимодействие с объектами управляющих элементов
Использование конкретных управляющих элементов
Блоки списков
Статические управляющие элементы
Командные кнопки
Кнопки с зависимой и независимой фиксацией
Групповые блоки
Полосы прокрутки
Регуляторы и индикаторы
Редактируемые управляющие элементы
Комбинированные блоки
Установка и считывание значений управляющих элементов
Использование буферов передачи
Определение буфера передачи
Определение соответствующего окна или диалогового блока
Передача данных
Реквизиты и объекты окон реквизита

Реквизиты и объекты окон реквизита
Реквизиты
Класс TGadget
Производные классы
Классы реквизитов ObjectWindows
Класс TSeparatorGadget
Класс TTextGadget
Класс TBitmapGadget
Класс TButtonGadget
Класс TControlGadget
Окна реквизитов
Производные классы
Класс TControlBar
Класс TMessageBar
Класс TStatusBar
Класс TToolBox
Объекты принтера

Объекты принтера
Создание объекта принтера
Создание объекта распечатки
Содержимое окон печати
Печать документа
Печать каждой страницы
Другие соглашения
Выбор другого принтера
Графические объекты

Графические объекты
Организация класса GDI
Работа с контекстами устройств
Класс TDC
Объектные элементы данных и функции


Класс TPen
Класс TBrush
Класс TFont
Класс Palette
Класс TBitmap
Класс TRegion
Класс TIcon
Класс TCursor
Класс TDib
Объекты проверки допустимости

Объекты проверки допустимости
Стандартные объекты проверки допустимости
Базовый класс TValidator
Класс фильтрации ввода
Класс проверки допустимости по диапазону
Класс проверки допустимости по таблице
Класс проверки допустимости строки
Класс проверки допустимости по шаблону
Использование средств проверки допустимости данных
Переопределение функций-элементов класса проверки допустимости
Управляющие объекты Visual Basic

Управляющие объекты Visual Basic
Использование управляющих элементов VBX
Классы управляющих элементов VBX
Класс TVbxControl
Класс TVbxEventHadler
Обработка сообщений управляющих элементов VBX
Доступ к управляющему элементу VBX
Методы управляющих элементов VBX
Справочное руководство по ObjectWindows 2.0 для С++

Справочное руководство по ObjectWindows 2.0 для С++
Статические библиотеки ObjectWindows
Файлы-заголовки ObjectWindows
Начиная с TApplication ...

Класс TApplication (applicat.h)
Класс Application::TXInvalidMainWindow (applicat.h)
Класс TBandInfo (dc.h)
Класс TMitMap (gdiobjec.h)
Класс BitmapGadget (bitmapga.h)
Класс BitSet (bitset.h)
Класс TBrush (gdiobjec.h)
Класс TButton (button.h)
Класс TButtonGadget (buttonga.h)
Класс TCelArray (celarray.h)
Класс TCharSet (bitset.h)
Класс TCheckBox (checkbox.h)
Класс TChooseColorDialor (chooseco.h)
Структура TChooseColorDialog::TData (chooseco.h)
Класс TChooseFontDialog (choosefo.h)
Класс TClientDC (dc.h)
Класс TClipboard (clipboard.h)
Класс TClipboardViewer (clipview.h)
Класс TColor (color.h)
Класс TComboBox (combobox.h)
Класс TComboBoxData (combobox.h)
Класс TCommonDialog (commdial.h)
Класс TControl (control.h)
Класс TControlBar (controlb.h)
Класс TControlGadget (controlg.h)
Класс CreatedDC (dc.h)
Класс TCursor (gdiobjec.h)
Класс TDC (dc.h)
Класс TDecorated (decframe.h)
Класс TDecoratedMDIFrame (decmdifr.h)


Класс TDesktopDC (dc.h)
Класс TDialog (dialog.h)
Структура TDialogAttr
Класс TDibDC (dc.h)
Класс TDocManager (docmanag.h)
Класс TDocTemplate (docmanag.h)
Класс TDocTemplateT<D,V> (docmanag.h)
Класс TDocument (docview.h)
Класс TDocument::List (docview.h)
Класс TDropInfo (point.h)
Начиная с TEdgeConstraint ...

Структура TEdgeConstraint (layoutco.h)
Структура TEdgeOfSizeConstraint (layoutco.h)
Класс TEdit (edit.h)
Класс TEditFile (editfile.h)
Класс TEditSearch (editsear.h)
Класс TEditView (editview.h)
Класс TEventHandler (enenthan.h)
Класс TFileDocument (filedoc.h)
Класс TFileOpenDialog (opensave.h)
Класс TFileSaveDialog (opensave.h)
Класс TFindReplaceDialog (fingrepl.h)
Структура TFindReplaceDialog::TData (findrepl.h)
Класс TFloatingFrame (floaffra.h)
Класс TFont (gdiobject.h)
Класс TFrameWindow (framewin.h)
Класс TGadget (gadget.h)
Класс TGadgetWindow (gadgetwi.h)
Класс TGadgetWindowFont (gadgetwi.h)
Класс TGauge (gauge.h)
Класс TGdiObject (gdiobject.h)
Класс TGdiObject::TXGdi (dgibase.h)
Класс TGroupBox (groupbox.h)
Класс THSlider (slider.h)
Класс TIC (dc.h)
Класс TIcon (gdiobjec.h)
Класс TInput (inputdia.h)
Класс TInStream (docview.h)
Класс TKeyboardModeTracker (keymodef.h)
Структура TLayoutConstraint (layoutco.h)
Класс TLayoutMetrics (layoutwi.h)
Класс TLayoutWindow (layoutwi.h)
Класс TListBox (listbox.h)
Структура TListBoxData (listbox.h)
Класс TListView (listview.h)
Класс TLookupValidator (validate.h)
Начиная с TMDIChild ...

Класс TMDIChild (ndichild.h)
КлассTMDICliten (mdi.h)
Класс TMDIFrame (mdi.h)
Класс TMemoryDC (dc.h)
Класс TMenu (menu.h)
Класс TMenuDescr (framewin.h)
Класс TMessageBar (messageb.h)
Класс TMetaFileDC (dc.h)
Класс TMetaFilePict (metafile.h)
Класс TModule (module.h)
Класс TModule::TXInvalideModule (module.h)
Класс TOpenSaveDialog (opensave.h)
Структура TOpenSaveDialog::TData (opensave.h)
Класс TOutStream (docview.h)
Класс TPaint (dc.h)
Класс TPalette (gdiobjec.h)
Класс TPaletteEntry (color.h)


Класс TPen (gdiobject.h)
Класс TPoint (point.h)
Класс TPointer<> (point.h)
Класс TPopMenu (menu.h)
Класс TPreviewPage (preview.h)
Класс TPrintDC (dc.h)
Класс TPrintDialog (printdia.h)
Структура TPrintDialog::TData (printdia.h)
Класс TPrintPreviewDC (preview.h)
Класс TPrinter (printer.h)
Класс TPrinterAbortDlg (printer.h)
Класс TPrintout (printer.h)
Класс TProcInstance (point.h)
Класс TPXPictureValidator (validate.h)
Начиная с TRadioButton ...

Класс TRadioButton (radiobut.h)
Класс TRangeValidator (validate.h)
Класс TRect (point.h)
Класс TRegion (gdiobjec.h)
Класс TReplaceDialog (findrepl.h)
Класс TResId (point.h)
Класс TResponseTableEntry (eventhan.h)
Класс TRgbQuad (color.h)
Класс tRgbTriple (color.h)
Класс TScrollBar (scrollba.h)
Структура TScrollBarStruct (scrollba.h)
Класс TScroller (scroller.h)
Класс TSeparatorGadget (gadget.h)
Класс TSize (point.h)
Класс TSlider (slider.h)
Класс TStatic (static.h)
Класс TStatus (except.h)
Класс TStatusBar (statusba.h)
Класс TStream (docview.h)
Класс TStringLookupValidator (validate.h)
Класс TSystemMenu (menu.h)
Класс TTinyCaption (tinycapt.h)
Класс TToolBox (toolbox.h)
Класс TValidator (validate.h)
Класс TValidator::TXValidator (validate.h)
Класс TVbxControl (vbxctl.h)
Класс TVbxEventHandler (vbxctrl.h)
Класс TView (docview.h)
Класс TVSlider (slider.h)
Класс TWindow (window.h)
Элементы данных
Функции-элементы
Класс TWindows::TXWindow (window.h)
Структура TWindowAttr (window.h)
Класс TWindowDC (dc.h)
Класс TWindowView (docview.h)
Класс TXCompatibility (except.h)
Класс TXOwl (except.h)
Назад | Содержание | Вперед

Глобальные переменные


Borland С++ предусматривает ряд предопределенных глобальных

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



Глобальные переменные DOS


В данном разделе представлены глобальные переменные Borland

С++, доступные только для 16-разрядных приложений DOS.



Глобальные переменные и классы


Глобальные переменные

Потоковые классы С++

Потоковые классы С++

Класс conbuf (constrea.h)

Класс constream (constrea.h)

Класс filebuf (fstream.h)

Класс fstream (fstream.h)

Класс fstreamable (fstream.h)

Класс ifstream (fstream.h)

Класс ios (iostream.h)

Класс iostream (iostream.h)

Класс istream (iostream.h)

Класс istream_withassign (iostream.h)

Класс istream (strstrea.h)

Класс ofstream (fstream.h)

Класс ostream (iostream.h)

Класс ostream_withassign (iostream.h)

Класс oststream (strstrea.h)

Класс streambuf (iostream.h)

Класс strstreambase (strstrea.h)

Класс strstreambuf (strstrea.h)

Класс strstream (strstrea.h)

Постоянные потоковые классы и макрокоманды

Постоянные потоковые классы и макрокоманды

Класс fpbase (objstm.h)

Класс ifpstream (objstrm.h)

Класс ipstream (objstrm.h)

Класс pstream (objstrm.h)

Класс TStreamableBase (objstrn.h)

Класс TStreamable (streambl.h)

Класс TStreamer (objstrm.h)

Макрокоманда __DELTA (streambl.h)

Макрокоманды, начинающиеся с DECLARE

Макрокоманды, начинающиеся с IMPLEMENT

Контейнерные классы С++ от TMArray... до TIHash...

Контейнерные классы С++

Шаблон TMArrayVector (arrays.h)

Шаблон TMArrayAsVectorIterator (arrays.h)

Шаблон TArrayAsVector (arrays.h)

Шаблон TArrayAsVectorIterator (arrays.h)

Шаблон TMIArrayAsVector (arrays.h)

Шаблон TMIArrayAsVectorIterator (arrays.h)

Шаблон TIArrayAsVector (arrays.h)

Шаблон TIArrayAsVectorItetator (arrays.h)

Шаблон TMSArrayAsVector (arrays.h)

Шаблон TMSArrayAsVectorItetator (arrays.h)

Шаблон TSArrayAsVector (arrays.h)

Шаблон TSArrayAsVectorItetator (arrays.h)

Шаблон TISArrayAsVector (arrays.h)

Шаблон TISArrayAsVectorItetator (arrays.h)

Шаблон TMISArrayAsVector (arrays.h)

Шаблон TMDAssociation (assoc.h)

Шаблон TDDAssociation (assoc.h)

Шаблон TDDAssociation (assoc.h)

Шаблон TDIAssociation (assoc.h)

Шаблон TMIDAssociation (assoc.h)

Шаблон TIDAssociation (assoc.h)

Шаблон TMIIAssociation (assoc.h)

Шаблон TIIAssociation (assoc.h)

Шаблон TMBagAsVector (bags.h)




Шаблон TMBagAsVectorIterator (bags.h)

Шаблон TBagAsVector (bags.h)

Шаблон TMBagAsVectorIterator (bags.h)

Шаблон TMIBagAsVector (bags.h)

Шаблон TMIBagAsVectorIterator (bags.h)

Шаблон TIBagAsVector (bags.h)

Шаблон TIBagAsVectorIterator (bags.h)

Шаблон TBinarySearchTreeImp (binimp.h)

Шаблон TBinarySearchTreeIteratorImp (binimp.h)

Шаблон TIBinarySearchTreeImp (binimp.h)

Шаблон TIBinarySearchTreeIteratorImp (binimp.h)

Шаблон TMDequeAsVector (deques.h)

Шаблон TMDequeAsVectorIterator (deques.h)

Шаблон TDequeAsVector (deques.h)

Шаблон TDequeAsVectorIterator (deques.h)

Шаблон TMIDequeAsVector (deques.h)

Шаблон TMIDequeAsVectorIterator (deques.h)

Шаблон TIDequeAsVector (deques.h)

Шаблон TMDequeAsDoubleList (deques.h)

Шаблон TMDequeAsDoubleListIterator (deques.h)

Шаблон TDequeAsDoubleList (deques.h)

Шаблон TDequeAsDoubleListIterator (deques.h)

Шаблон TMIDequeAsDoubleList (deques.h)

Шаблон TMIDequeAsDoubleListIterator (deques.h)

Шаблон TIDequeAsDoubleList (deques.h)

Шаблон TDequeAsDoubleListIterator (deques.h)

Шаблон TMDictionaryAsHashTable (dict.h)

Шаблон TMDictionaryAsHashTableIterator (dict.h)

Шаблон TDictionaryAsHashTable (dict.h)

Шаблон TDictionaryAsHashTableIterator (dict.h)

Шаблон TMIDictionaryAsHashTable (dict.h)

Шаблон TMIDictionaryAsHashTableIterator (dict.h)

Шаблон TIDictionaryAsHashTable (dict.h)

Шаблон TIDictionaryAsHashTableIterator (dict.h)

Шаблон TDictionary (dict.h)

Шаблон TDictionaryIterator (dict.h)

Шаблон TMDoubleListElement (dlistimp.h)

Шаблон TMDoubleListImp (dlistimp.h)

Шаблон TMDoubleListIteratorImp (dlistimp.h)

Шаблон TDoubleListImp (dlistimp.h)

Шаблон TDoubleListIteratorImp (dlistimp.h)

Шаблон TMSDoubleListImp (dlistimp.h)

Шаблон TMSDoubleListIteratorImp (dlistimp.h)

Шаблон TSDoubleListImp (dlistimp.h)

Шаблон TSDoubleListIteratorImp (dlistimp.h)

Шаблон TMIDoubleListImp (dlistimp.h)

Шаблон TMIDoubleListIteratorImp (dlistimp.h)

Шаблон TIDoubleListImp (dlistimp.h)

Шаблон TIDoubleListIteratorImp (dlistimp.h)



Шаблон TMISDoubleListImp (dlistimp.h)

Шаблон TMISDoubleListIteratorImp (dlistimp.h)

Шаблон TISDoubleListImp (dlistimp.h)

Шаблон TISDoubleListIteratorImp (dlistimp.h)

Шаблон THashTableImp (hashimp.h)

Шаблон THashTableIteratorImp (hashimp.h)

Шаблон TMIHashTableImp (hashimp.h)

Шаблон TMIHashTableIteratorImp (hashimp.h)

Шаблон TIHashTableImp (hashimp.h)

Шаблон TIHashTableIteratorImp (hashimp.h)

Контейнерные классы С++ от TMList... до TShould...



Шаблон TMListElement (listimp.h)

Шаблон TMListImp (listimp.h)

Шаблон TMListIteratorImp (listimp.h)

Шаблон TMListImp (listimp.h)

Шаблон TListIteratorImp (listimp.h)

Шаблон TMSListImp (listimp.h)

Шаблон TMSListIteratorImp (listimp.h)

Шаблон TSListImp (listimp.h)

Шаблон TSListIteratorImp (listimp.h)

Шаблон TMIListImp (listimp.h)

Шаблон TMiListIteratorImp (listimp.h)

Шаблон TIListImp (listimp.h)

Шаблон TIListIteratorImp (listimp.h)

Шаблон TMISListImp (listimp.h)

Шаблон TMISListIteratorImp (listimp.h)

Шаблон TISListImp (listimp.h)

Шаблон TMISListIteratorImp (listimp.h)

Шаблон TMQueueAsVector (queues.h)

Шаблон TMQueueAsVectorIterator (queues.h)

Шаблон TQueueAsVector (queues.h)

Шаблон TQueueAsVectorIterator (queues.h)

Шаблон TMIQueueAsVector (queues.h)

Шаблон TMIQueueAsVectorIterator (queues.h)

Шаблон TIQueueAsVector (queues.h)

Шаблон TIQueueAsVectorIterator (queues.h)

Шаблон TMQueueAsDoubleList (queues.h)

Шаблон TMQueueAsDoubleListIterator (queues.h)

Шаблон TQueueAsDoubleList (queues.h)

Шаблон TQueueAsDoubleListIterator (queues.h)

Шаблон TMIQueueAsDoubleList (queues.h)

Шаблон TMIQueueAsDoubleListIterator (queues.h)

Шаблон TIQueueAsDoubleList (queues.h)

Шаблон TQueue (queues.h)

Шаблон TQueueIterator (queues.h)

Шаблон TMSetAsVector (sets.h)

Шаблон TMSetAsVectorIterator (sets.h)

Шаблон TSetAsVector (sets.h)

Шаблон TSetAsVectorIterator (sets.h)

Шаблон TMISetAsVector (sets.h)

Шаблон TMISetAsVectorIterator (sets.h)

Шаблон TISetAsVector (sets.h)

Шаблон TISetAsVectorIterator (sets.h)

Шаблон TSet (sets.h)



Шаблон TSetIterator (sets.h)

Шаблон TStackAsVector (stacks.h)

Шаблон TMStackAsVectorIterator (stacks.h)

Шаблон TStackAsVector (stacks.h)

Шаблон TStackAsVectorIterator (stacks.h)

Шаблон TMIStackAsVector (stacks.h)

Шаблон TMIStackAsVectorIterator (stacks.h)

Шаблон TIStackAsVector (stacks.h)

Шаблон TIStackAsVectorIterator (stacks.h)

Шаблон TMStackAsList (stacks.h)

Шаблон TMStackAsListIterator (stacks.h)

Шаблон TStackAsList (stacks.h)

Шаблон TStackAsListIterator (stacks.h)

Шаблон TMIStackAsList (stacks.h)

Шаблон TMIStackAsListIterator (stacks.h)

Шаблон TIStackAsList (stacks.h)

Шаблон TIStackAsListIterator (stacks.h)

Шаблон TStack (stacks.h)

Шаблон TStackIterator (stacks.h)

Шаблон TMVectorImp (vectimp.h)

Шаблон TMVectorIteratorImp (vectimp.h)

Шаблон TVectorImp (vectimp.h)

Шаблон TVectorIteratorImp (vectimp.h)

Шаблон TMCVectorImp (vectimp.h)

Шаблон TMCVectorIteratorImp (vectimp.h)

Шаблон TCVectorImp (vectimp.h)

Шаблон TCVectorIteratorImp (vectimp.h)

Шаблон TMSVectorImp (vectimp.h)

Шаблон TMSVectorIteratorImp (vectimp.h)

Шаблон TSVectorImp (vectimp.h)

Шаблон TSVectorIteratorImp (vectimp.h)

Шаблон TMIVectorImp (vectimp.h)

Шаблон TMIVectorIteratorImp (vectimp.h)

Шаблон TIVectorImp (vectimp.h)

Шаблон TIVectorIteratorImp (vectimp.h)

Шаблон TMICVectorImp (vectimp.h)

Шаблон TMICVectorIteratorImp (vectimp.h)

Шаблон TICVectorImp (vectimp.h)

Шаблон TICVectorIteratorImp (vectimp.h)

Шаблон TMISVectorImp (vectimp.h)

Шаблон TMISVectorIteratorImp (vectimp.h)

Шаблон TISVectorImp (vectimp.h)

Шаблон TISVectorIteratorImp (vectimp.h)

Класс TShouldDelete (shddel.h)

Математические классы С+



Математические классы С+

Класс bcd (bcd.h)

Класс complex (comnplex.h)

Диагностические макрокоманды



Диагностические макрокоманды

Поддержка этапа выполнения

Класс Bad_cast (typeinfo.h)

Класс Bad_typeid (typeinfo.h)

Функция set_new_handler (new.h)

Функция set_termionate (except.h)

Функция set_unexpected (except.h)

Функция terminate (except.h)

Класс Type_info (typeinfo.h)

Функция unexpected (except.h)

Класс xalloc (except.h)

Класс xmsg (except.h)

Вспомогательные классы С++

Класс TDate (date.h)

Класс TFileStatus (file.h)

Класс String (cstring.h)

Класс TSubString (cstring.h)

Класс TCriticalSection (thread.h)

Класс TCriticalSection::Lock (thread.h)

Класс TMutex (thread)

Класс TMutex::Lock (thread.h)

Класс TSync (thread.h)

Класс TSync::Lock (thread.h)

Класс TThread (thread.h)

Класс TTread::TThreadError (thread.h)

Класс TTime (time.h)

Назад | Содержание | Вперед


Графические объекты


Ниже описываются инкапсуляция в ObjectWindows 2.0 GDI Windows. ObjectWindows облегчает использование графических объектов

и функций GDI.

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

графика может быть в форме линий, форм, текста или побитовых

(растровых) отображений. Для предоставления приложениям функциональных возможностей работы с графикой Windows имеет набор функций, называемых интерфейсом с графическими устройствами (GDI).

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

зависящие от используемого устройства представления. Например, вы

можете использовать одни и те же функции GDI для написания программ для дисплеев EGA и VGA или для принтера PostScript. Независимость от устройств достигается с помощью использования драйверов устройств, переводящих вызовы функций GDI в команды, понятные

использующемуся устройству вывода.



Графические подпрограммы


Следующие подпрограммы позволяют создавать экранные графические представления с текстовой частью.

arc (graphics.h) fillellipse (graphics.h)
bar (graphics.h) fillpoly (graphics.h)
bar3d (graphics.h) floofill (graphics.h)
circle (graphics.h) getarccoords (graphics.h)
cleardevice (graphics.h) getaspectratio (graphics.h)
clearviewport (graphics.h) getbkcolor (graphics.h)
closgraph (graphics.h) getcolor (graphics.h)
detectgraph (graphics.h) getdefaultpallette(graphics.h)
drawpoly (graphics.h) getdrivername (graphics.h)
ellipse (graphics.h) getfillpattern (graphics.h)
getfillsettings (graphics.h) outtext (graphics.h)
getgraphmode (graphics.h) outtextxy (graphics.h)
getimage (graphics.h) pieslice (graphics.h)
getfinesettings (graphics.h) pufimage (graphics.h)
getmaxcolor (graphics.h) pulpixel (graphics.h)
getmaxmode (graphics.h) rectangle (graphics.h)
getmaxx (graphics.h) registerbgidriver (graphics.h)
getmaxy (graphics.h) registerbgifont (graphics.h)
getmodename (graphics.h) restorecrtmode (graphics.h)
getmoderange (graphics.h) sector (graphics.h)
getpalette (graphics.h) settaffpalette (graphics.h)
getpixel (graphics.h) setaspectratio (graphics.h)
gettextsettings (graphics.h) setbkcolor (graphics.h)
getviewsettings (graphics.h) setcolor (graphics.h)
getx (graphics.h) setcursortype (conio.h)
gety (graphics.h) setfillpattern (graphics.h)
graphdefaults (graphics.h) setfillstyle (graphics.h)
grapherrormsg (graphics.h) setgraphbufsize (graphics.h)
_graphfreemem (graphics.h) setgraphmode (graphics.h)
_graphgetmem (graphics.h) setlinestyle (graphics.h)
graphresult (graphics.h) setpalette (graphics.h)
imagesize (graphics.h) setrgbpalette (graphics.h)
initgraph (graphics.h) settextjunistify (graphics.h)
installuserdriver(graphics.h) settexttyle (graphics.h)
installuserfont (graphics.h) setusercharsize (graphics.h)
line (graphics.h) setviewport (graphics.h)
linerel (graphics.h) setvisualpage (graphics.h)
lineto (graphics.h) setwritemode (graphics.h)
moverei (graphics.h) textheight (graphics.h)
moveto (graphics.h) textwidth (graphics.h)