- 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) |