Главная » C++ Builder

Создание компонентов в CBuilder (FAQ)

Добавлено Дата: 22 July, 2013 категория: C++, C++ Builder

Как добавить свойство класса, например TFont, в мой компонент?

Если вы используете уже существующее свойство вроде TFont, следует просто определить свойство этого типа. В случае же, если вы хотите создать новое свойство, являющееся классом, для использования в своем компоненте, вам надо позаботиться о нескольких вещах. Во-первых, используемый вами класс должен являться потомком (хотя бы далеким) TPersistent, то есть наследовать от класса, наследующего от TPersistent. Во-вторых, вы должны определить класс, в котором вы собираетесь использовать свойство.

Читать »

Более сложный пример: просмотр атрибутов файлов в CBuilder

Добавлено Дата: 21 July, 2013 категория: C++, C++ Builder

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

Читать »

Обзор C++ Builder

Добавлено Дата: 21 July, 2013 категория: C++, C++ Builder

Что такое C++ Builder?

Вокруг C++ Builder, настоящего  инструмента RAD (Rapid Application Development, быстрой разработки приложений) на C++ для Windows, в программистской среде поднят большой шум. Без сомнения, до вас дошли его отголоски, и то, что вы открыли эту книгу, похоже означает, что вы достаточно сильно заинтересованы, чтобы попробовать его на вкус. Название книги предполагает, что вы, по крайней мере, немного знакомы с предметом и хотите узнать о нем побольше. Перед тем как перейти к детальному  описанию  системы,  рассмотрим  общую  картину:  что  делает C++ Builder таким мощным инструментом и почему это так важно в индустрии программных средств? Для начала давайте избавимся от неудобоваримо длинного имени и во всей книге будем называть интегрированную среду разработки C++ Builder просто CBuilder. Мы, конечно, могли бы сократить название и просто до Builder, но это вызовет  проблемы при  разговоре о  JBuilder — среде фирмы Borland для создания приложений Java.

Читать »

Работа с Windows API в CBuilder

Добавлено Дата: 20 July, 2013 категория: C++, C++ Builder

Windows API (Application Programming Interface, интерфейс программирования приложений в Windows) незримо присутствует за всем блеском VCL и чудесами интегрированной среды разработки CBuilder. В VCL нет ничего, что нельзя было бы сделать в Windows API, и по очень простой причине. Все в Windows работает через API. Операционная система сама поддерживает этот интерфейс и использует его во всех своих вспомогательных программах. Независимо от того, насколько сложен код, в конце концов все сводится к вызовам API.

Читать »

Построение строковой библиотеки в CBuilder

Добавлено Дата: 20 July, 2013 категория: C++, C++ Builder

Мы решили, что создать библиотеку (DLL), содержащую наши строковые ресурсы, — задача нужная, так что пора этим заняться. Создание DLL в CBuilder не является сложным процессом, так же как и создание строк, входящих в эту библиотеку. Итак, поехали.

Создайте в CBuilder новый проект, выбрав команду File д New. На странице Projects страничного диалога выберите DLL из доступных типов объектов. Нажмите на кнопку OK, и CBuilder сгенерирует «скелет» DLL, включая весь предварительный код. Мы не собираемся работать с этим кодом в данном примере, так как эта DLL не будет содержать никакого дополнительного кода.

Читать »

Динамические компоненты, часть первая C++ Builder

Добавлено Дата: 19 July, 2013 категория: C++, C++ Builder

Если бы вы заглянули в эхоконференции (newsgroups) по CBuilder в Internet, то вы увидели бы, что один из наиболее частых вопросов — это как создавать управляющие элементы во время работы приложения. Хотя CBuilder и предоставляет богатый ассортимент компонентов и возможности легкого манипулирования ими в дизайнере форм, многие программисты не хотят связываться со

Читать »

Использование управляющих элементов ActiveX в CBuilder

Добавлено Дата: 19 July, 2013 категория: C++, C++ Builder

Используются управляющие элементы ActiveX в CBuilder так же, как и любые  другие управляющие элементы. Вы выбираете управляющий элемент со страницы палитры компонентов ActiveX (или куда вы его положили) и кладете его на форму. Устанавливаете нужные вам свойства, оставляя  неизменными некоторые значения по умолчанию, а остальное управляющий элемент сделает сам. Основная разница между ActiveX и VCL проявляется при установке, когда вам нужно поставлять не только исполняемый файл приложения, а все OCX-файлы для управляющих элементов ActiveX. Кроме того, вам нужно зарегистрировать новые управляющие элементы ActiveX в той системе, куда вы их устанавливаете.

Читать »

Всемогущее множество STL

Добавлено Дата: 18 July, 2013 категория: C++, C++ Builder

Следующий класс, который мы собираемся исследовать в нашем обзоре STL — класс set (множество). Этот класс представляет собой реализацию математического понятия множества. Множество содержит одиночные элементы данного вида; в нем не может быть двух и более элементов с одинаковыми значениями. Для использования этого класса вам нужно подключить в проект заголовочный файл <set>:

Читать »

Использование программы Implib в CBuilder

Добавлено Дата: 18 July, 2013 категория: C++, C++ Builder

Программа Implib предназначена для создания библиотек импорта (import libraries) для DLL (динамически связываемых  библиотек), которые вы хотите подключить к своему приложению. Важно использовать именно версию  Borland CBuilder этой программы при создании библиотек импорта для использования в приложениях CBuilder. Более старые версии фирмы Borland или же аналоги других фирм создадут библиотеки, некорректно поддерживаемые CBuilder, что повлечет за собой появление в вашей программе сообщений об ошибках странного содержания. Мы рассмотрим использование DLL в CBuilder, равно как и создание DLL в CBuilder для других приложений, в следующей главе. А сейчас давайте просто рассмотрим те шаги, которые надо предпринять для создания библиотеки импорта для использова ния в вашем основном приложении в CBuilder.

Читать »

Работа с базами данных в CBuilder

Добавлено Дата: 17 July, 2013 категория: C++, C++ Builder

Одна из наиболее важных особенностей системы CBuilder — встроенная в нее возможность (и соответствующие условия) работы с базами данных. Для начала программист на С++ получит возможность простейшего доступа к базам данных за счет предоставляемых стандартных компонентов, которые в CBuilder поддержива ют большое количество разнообразных форматов. Стандартные форматы баз данных фирмы Borland, поддерживаемые напрямую Borland Database Engine (демон поддержки баз данных фирмы Borland), включают в себя dBase, Paradox и InterBase. Кроме  того,  последняя  версия  CBuilder  содержит  драйверы,  которые  позволяют  осуществлять

Читать »

Обзор файлов, сгенерированных для элементов ActiveX CBuilder

Добавлено Дата: 17 July, 2013 категория: C++, C++ Builder

Когда вы используете обычный компонент VCL, вы включаете заголовочный файл  этого компонента. Исходный код для такого компонента живет в файле на языке Pascal (этого файла у вас может и не быть, все зависит от того, покупали ли вы исходные тексты VCL с вашей версией CBuilder). В любом случае, файл библиотеки содержит объектный файл для исходного кода на Pascal. Каким же образом CBuilder работает с управляющими элементами ActiveX как с обычными компонентами, когда они сделаны в другой системе и, скорее всего, у вас нет для них исходного кода?

Читать »

Списки с drag-and-drop, часть вторая C++ Builder

Добавлено Дата: 16 July, 2013 категория: C++, C++ Builder

Одна вещь действительно озадачила меня в программе перетаскивания после того, как я ее написал. Это та же проблема, которой я был озадачен и тогда, после начальной версии проекта с drag-and-drop, о котором я говорил в начале этого примера. Проблема в том, что перетаскиваемые элементы попадают в конец того списка, в который их притащили. Это раздражает пользователя, который аккуратно переместил мышь к элементу, после которого хочет добавить перетаскиваемые, а получает их в конце списка.

Читать »

Пример номер два: крестики-нолики C++ Builder

Добавлено Дата: 15 July, 2013 категория: C++, C++ Builder

Крестики-нолики — одна из старейших игр, известных человеку. Она не сложна, и я думаю, что большинство людей знакомы с ее правилами. В нашей  версии  крестиков-ноликов  (программа будет называться Tic-Tac-Toe — таково английское на звание игры) мы изучим подробнее внутренние особенности графики в CBuilder, процесс пользовательского ввода/вывода и возможности формы в рисовании и отображении объектов.

Читать »

Стеки и очереди STL

Добавлено Дата: 13 July, 2013 категория: C++, C++ Builder

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

Читать »

Работа с динамически связываемыми библиотеками (DLL) в CBuilder

Добавлено Дата: 13 July, 2013 категория: C++, C++ Builder

Выше в главе мы рассматривали хранение ресурсов в динамической библиотеке. Однако кроме ресурсов вы можете хранить в DLL многие другие вещи, самой важной из которых является код функций. DLL — одна из самых полезных и мощных возможностей, когда-либо добавленных в операционную систему Windows. Используя DLL, вы решаете две главные задачи в разработке приложений: ограничения по памяти и проблемы с версиями.

Читать »