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

Компонент LineGraph в CBuilder

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

 

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

Читать »

Использование источников ODBC с объектами баз данных CBuilder

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

Один из вопросов по базам данных, наиболее часто задаваемых в сети Internet, —это вопрос о том, как использовать базы данных ODBC с CBuilder. В вопросе речь идет, как правило, о базе данных Microsoft Access, но вся описываемая ниже процедура применима и ко всем остальным  базам данных ODBC.

Читать »

Создание DLL в CBuilder

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

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

Читать »

Время в панели состояния C++ Builder

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

Нашим последним примером в экскурсе в VCL станет кое-что, в чем многие программисты нуждаются в своих приложениях, но лишь немногие способны осуществить. Во многих приложениях существует необходимость отображать текущее время <Невеселый каламбур получился — Примеч. перев.> в одной из секций панели состояния (status  bar). Хотя  обычно рабочий стол Windows 95/NT отображает его в нижнем правом углу, это происходит не всегда. Пользователи, которые изменили у себя рабочий стол так, что время на нем не показывается, ожидают, что ваше приложение должно предоставить им эту информацию. CBuilder позволяет осуществить их желание настолько легко, что для вас не может быть никаких оправданий, если вы все же не пойдете им навстречу и не положите часы в ваше приложение. В этом примере мы как раз и рассмотрим процесс отображения текущего времени в панели состояния. Когда мы его напишем, вы узнаете достаточно для того, чтобы отображать все что захотите в панели состояния во время исполнения.

Читать »

Кое-что о файлах ресурсов в CBuilder

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

Хотя вы обычно будете создавать ресурс с помощью какой-нибудь утилиты, например Resource Workshop в Borland C++ или Resource Editor в Visual C++, вы, разумеется , можете создать файл ресурса самостоятельно. Есть элементы, разрешенные в файле ресурсов, которые имеют значение для приложения в CBuilder, и несколько элементов, которые почти не имеют никакого значения. Давайте сделаем небольшой обзор тех вещей, которые вы можете поместить в файл ресурсов, а также тех, которые вы вряд ли будете когда-либо использовать.

Читать »

Создание Мастера в CBuilder

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

Мастер, или Эксперт, — это расширение системы CBuilder, которое служит пользователю для облегчения выполнения некоторых задач (в основном, по созданию чего-либо). Для создания компонентов в CBuilder существует Мастер компонентов, который можно вызвать посредством команды меню Component д New. Кроме этого, в системе есть Мастер форм (Dialog Form Wizard),

Читать »

Библиотека стандартных шаблонов

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

Borland CBuilder включает в себя, как мы отмечали выше, полный компилятор стандарта ANSI C++. Одним из новых требований к любому компилятору C++, наложенных комитетом ANSI C++, является требование поставки компилятора с реализацией стандартной библиотеки. Это нужно для упрощения переноса так называемого переносимого кода (portable code), например, вспомогательных функций  и функций работы с базами данных, на другой компилятор (другую платформу). Это изменение — одно из самых важных в отношении движения C++ к настоящей переносимости между компиляторами, операционными системами и платформами.

Читать »

Копируем проект C++ Builder

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

Обычно вы выбираете один из двух возможных путей для создания нового проекта. Либо вы создаете новый проект с нуля и постепенно добавляете в него код, необходимый для выполнения вашей задачи, либо вы берете существующий проект и переделываете его в новый. Репозиторий объектов может быть использован для хранения проектов, которые вам надо будет использовать еще или переделывать в новые проекты. Обычные проекты тем не менее вы скорее всего будете просто открывать и использовать команду меню File д Save Project As для создания нового проекта в новом каталоге.

Читать »

Создание формы для динамической загрузки DLL в CBuilder

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

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

Читать »

Работа с компилятором ресурсов в CBuilder

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

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

Читать »

Использование функций Delphi в приложениях CBuilder

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

Если вы можете использовать форму Delphi в приложении, то почему бы не попробовать использовать модуль Delphi без формы, ассоциированной с ним? Как было  бы  здорово использовать все реализованные ранее в Delphi возможности при написании кода на C++! К счастью, это возможно.

Читать »

Проверка разрешения на перемещение C++ Builder

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

Случаем, противоположным уходом со страницы, является запрещение пользователю выбора определенной страницы по щелчку на ее закладке в PageControl. Этот случай более сложный, чем предыдущий. Microsoft в своей безграничной мудрости в Windows 95 не предоставила управляющему элементу страничному диалогу возможности не позволять выбор  заданной страницы. Некоторые страничные диалоги, пришедшие из третьих рук, предоставляют такую возможность, но все, что написано с использованием стандартного Windows 95 Tab Control, не позволяет так делать. CBuilder, естественно, где только возможно использует зашитые в операционной системе управляющие элементы для обеспечения совместимости с другими приложениями. Поэтому вы не можете просто взять и сделать страницу недоступной.

Читать »

Итератор STL

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

Вторая важная часть этого примера программы — использование класса iterator (итератор). В строчках кода

list<string, allocator<string> >::iterator list_iterator; list_iterator = listStrings.begin();

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

Читать »

Обработка измерения элемента C++ Builder

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

Вы, может быть, помните, что мы сделали список переменного owner-draw (ручной прорисовки) типа. Это заставит систему Windows  посылать  списку  сообщение  WM_MEASEUREITEM. CBuilder затем перенаправит это сообщение в обработчик MeasureItem для списка, который в свою очередь вызовет обработчик MeasureItem для родительского окна и для формы, если такие обработчики существуют. Так как мы создали обработчик события MeasureItem, то пора теперь его реализовать. Добавьте следующий код в обработчик события MeasureItem в исходном файле формы (Unit1.cpp):

Читать »

Обработка исключительных ситуаций в CBuilder (FAQ)

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

Как использовать выражения try … catch?

В принципе все, что может вызвать появление исключительной ситуации, должно быть заключено в блок try, для того, чтобы вы могли обработать эту исключительную ситуацию. В общем виде блок try … catch выглядит следующим образом:

Читать »