Borland c программы пример

Borland C++ Builder — выпущенное недавно компанией Borland средство быстрой разработки приложений, позволяющее создавать приложения на языке C++, используя при этом среду разработки и библиотеку компонентов Delphi. В настоящей статье рассматривается среда разработки C++ Builder и основные приемы, применяемые при проектировании пользовательского интерфейса.

Среда разработки C++ Builder

C++ Builder представляет собой SDI-приложение, главное окно которого содержит настраиваемую инструментальную панель (слева) и палитру компонентов (справа). Помимо этого, по умолчанию при запуске C++ Builder появляются окно инспектора объектов (слева) и форма нового приложения (справа). Под окном формы приложения находится окно редактора кода.

Рис.1. Среда разработки C++ Builder

Формы являются основой приложений C++ Builder. Создание пользовательского интерфейса приложения заключается в добавлении в окно формы элементов объектов C++ Builder, называемых компонентами. Компоненты C++ Builder располагаются на палитре компонентов, выполненной в виде многостраничного блокнота. Важная особенность C++ Builder состоит в том, что он позволяет создавать собственные компоненты и настраивать палитру компонентов, а также создавать различные версии палитры компонентов для разных проектов.

First Program in Borland C++

Компоненты C++ Builder

Компоненты разделяются на видимые (визуальные) и невидимые (невизуальные). Визуальные компоненты появляются во время выполнения точно так же, как и во время проектирования. Примерами являются кнопки и редактируемые поля. Невизуальные компоненты появляются во время проектирования как пиктограммы на форме. Они никогда не видны во время выполнения, но обладают определенной функциональностью (например, обеспечивают доступ к данным, вызывают стандартные диалоги Windows 95 и др.)

Рис. 2. Пример использования видимых и невидимых компонентов

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

Каждый компонент C++ Builder имеет три разновидности характеристик: свойства, события и методы.

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

Рис.3. Инспектор объектов

Свойства компонентов

Свойства являются атрибутами компонента, определяющими его внешний вид и поведение. Многие свойства компонента в колонке свойств имеют значение, устанав иваемое по умолчанию (например, высота кнопок). Свойства компонента отображаются а странице свойств (Properties). Инспектор объектов отображает опубликованные (published) свойства компонентов.

Помимо published-свойств, компоненты могут и чаще всего имеют общие (public), опубликованные свойства, которые доступны только во время выполнения приложения. Инспектор объектов используется для установки свойств во время проектирования. Список свойств располагается на странице свойств инспектора объектов. Можно определить свойства во время проектирования или написать код для видоизменения свойств компонента во время выполнения приложения.

Download and Install Borland C++ Compiler for Windows 10

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

События

Страница событий (Events) инспектора объектов показывает список событий, распознаваемых компонентом (программирование для операционных систем с графическим пользовательским интерфейсом, в частности, для Windows 95 или Windows NT предполагает описание реакции приложения на те или иные события, а сама операционная система занимается постоянным опросом компьютера с целью выявления наступления какого-либо события). Каждый компонент имеет свой собственный набор обработчиков событий. В C++ Builder следует писать функции, называемые обработчиками событий, и связывать события с этими функциями. Создавая обработчик того или и ого события, вы поручаете программе выполнить написанную функцию, если это событие произойдет.

Для того, чтобы добавить обработчик событий, нужно выбрать на форме с помощью мыши компонент, которому необходим обработчик событий, затем открыть страницу событий инспектора объектов и дважды щелкнуть левой клавишей мыши на колонке з ачений рядом с событием, чтобы заставить C++ Builder сгенерировать прототип обработчика событий и показать его в редакторе кода. При этом автоматически генерируется текст пустой функции, и редактор открывается в том месте, где следует вводить код. Курсор позиционируется внутри операторных скобок < . >. Далее нужно ввести код, который должен выполняться при наступлении события. Обработчик событий может иметь параметры, которые указываются после имени функции в круглых скобках.

Читайте также:
Как называется программа о еде

Рис.4. Прототип обработчика событий.

Методы

Метод является функцией, которая связана с компонентом, и которая объявляется как часть объекта. Создавая обработчики событий, можно вызывать методы, используя следующую нотацию: ->, например:

Edit1->Show();

Отметим, что при создании формы связанные с ней модуль и заголовочный файл с расширением *.h генерируются обязательно, тогда как при создании нового модуля он не обязан быть связан с формой (например, если в нем содержатся процедуры расчетов). Имена формы и модуля можно изменить, причем желательно сделать это сразу после создания, пока на них не появилось много ссылок в других формах и модулях.

Менеджер проектов

Файлы, образующие приложение — формы и модули — собраны в проект. Менеджер проектов показывает списки файлов и модулей приложения и позволяет осуществ ять навигацию между ними. Можно вызвать менеджер проектов , выбрав пункт меню View/Project Manager. По умолчанию вновь созданный проект получает имя Project1.cpp.

Рис.5. Менеджер проектов

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

Можно также добавлять существующие формы и модули к проекту, используя кнопку Add контекстного меню менеджера проектов и выбирая модуль или форму, которую нужно добавить. Формы и модули можно удалить в любой момент в течение разработки проекта. Однако, из-за того, что форма связана всегда с модулем, нельзя удалить одно без удаления другого, за исключением случая, когда модуль не имеет связи с формой. Удалить модуль из проекта можно, используя кнопку Remove менеджера проектов.

Если выбрать кнопку Options в менеджере проектов, откроется диалоговая панель опций проекта, в которой можно выбрать главную форму приложения, определить, какие формы будут создаваться динамически, каковы параметры компиляции модулей (в том числе созданных в Delphi 2.0, так как C++ Builder может включать их в проекты) и компоновки.

Рис. 6. Установка опций проекта

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

Разумеется, C++ Builder обладает встроенной системой контекстно-зависимой помощи, доступной для любого элемента интерфейса и являющейся обширным источником справочной информации о C++ Builder.

Создание приложений в С++ Builder

Первым шагом в разработке приложения C++ Builder является создание проекта. Файлы проекта содержат сгенерированный автоматически исходный текст, который становится частью приложения, когда оно скомпилировано и подготовлено к выполнению. Чтобы создать новый проект, нужно выбрать пункт меню File/New Application.

C++ Builder создает файл проекта с именем по умолчанию Project1.cpp, а также make-файл с именем по умолчанию Project1.mak. При внесении изменений в проект, таких, как добавление новой формы, C++ Builder обновляет файл проекта.

Рис.7 Файл проекта

  • Файл формы с расширением.DFM, содержащий информацию о ресурсах окон для конструирования формы
  • Файл модуля с расширением.CPP, содержащий код на C++.
  • Заголовочный файл с расширением .H, содержащий описание класса формы.

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

Для того чтобы добавить одну или более форм к проекту , выберите пункт меню File/New Form. Появится пустая форма, которая будет добавлена к проекту. Можно воспользоваться пунктом меню File/New, выбрать страницу Forms и выбрать подходящий шаблон из репозитория объектов.

Рис.8 Шаблоны форм

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

Если при выполнении приложения возникает ошибка времени выполнения, C++ Builder делает паузу в выполнении программы и показывает редактор кода с курсором, установленным на операторе, являющемся источником ошибки. Прежде чем делать необходимую коррекцию, следует перезапустить приложение, выбирая пункт меню Run из контекстного меню или из меню Run, закрыть приложение и лишь затем вносить изменения в проект. В этом случае уменьшится вероятность потери ресурсов Windows.

Читайте также:
В какой программе редактировать звук

Пример: создание простейшего приложения

Теперь попробуем создать простейшее приложение, позволяющее вводить текст в редактируемое поле и добавлять этот текст к списку при нажатии мышью на кнопку. Выберем пункт меню File/New Application для создания проекта и сохраним его главную форму под именем samp1.cpp, а сам проект под именем samp.mak. Поместим на форму компоненты Button, Edit и ListBox со страницы Standard палитры компонент.

Рис. 9. Размещение компонентов на форме

После этого выберем на форме компонент Edit и удалим текущее значение свойства Text. Затем установим свойство Caption для Button1 равным «Добавить».

Чтобы добавить обработчик события OnClick для кнопки Добавить, нужно выбрать эту кнопку на форме, открыть страницу событий в инспекторе объектов и дважды щелкнуть мышью на колонке справа от события OnClick. В соответствующей строке ввода появится имя функции. C++ Builder сгенерирует прототип обработчика событий и покажет его в редакторе кода. После этого следует ввести следующий код в операторные скобки < . >тела функции:

void __fastcall TForm1::Button1Click(TObject *Sender) < if (!(Edit1->Text == «»)) < ListBox1->Items->Add(Edit1->Text); Edit1->Text = «» ; > >

Для компиляции приложения в меню Run выберем пункт Run. Теперь можно что-нибудь ввести в редактируемое поле, нажать мышью на кнопку Добавить и убедиться, что вводимые строки добавляются к списку.

Рис.10. Так выглядит готовое приложение.

Теперь модифицируем приложение, добавив кнопки Удалить и Выход. Для этого добавим еще две кнопки, изменим их свойство Caption и создадим обработчики событий, связанных с нажатием на эти кнопки:

Рис. 11. Модифицированное приложение

Для кнопки Удалить:

void __fastcall TForm1::Button2Click(TObject *Sender) < if (!(ListBox1->ItemIndex == -1)) ListBox1->Items->Delete(ListBox1->ItemIndex); >

Для кнопки Выход:

Close();

Сохраним и скомпилируем приложение, а затем протестируем его.

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

04.2001

Источник: www.interface.ru

Пример программы Function

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

Задайте свойство Captionдля кнопок от первой до пятой, присваивающие им соответственно названия: Рисовать, +, —, Очистить и Функция.Размер пятой кнопки увеличьте по горизонтали примерно в два раза. Компонент Imageрастяните и разместите на оставшейся части формы. Свойство Captionформы заполните названием Function.

Разместите все компоненты на форме в соответствии с рис. 23.3.

Окно формы программы Function

Рис. 23.3. Окно формы программы Function

Теперь сохраните модуль проекта в файле с названием Ufunction.cpp, а сам проект в файле с названием Function.bpr . Вставьте в файл описаний Ufunction.h после строки public: // user declarations следующие программные строки:

int n; // Номер функции
float m; // Масштаб

описывающие переменные номера функций и масштаба.

После оператора #inciude «ufunction.h» в файле Ufunction.cpp впишите строку:

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

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

Листинг 23.7. Обработчик события OnClick

void __fastcall TForm1:: Button4Click(TObject *Sender)
Image1->Canvas->FillRect(Rect (0,0,Image1->Width, Image1->Height));
>

Программная строка обработчика содержит знакомый нам метод FillRect.
Для обработчика события OnClickкнопки рисования введем строки программного кода (листинг 23.8).

Листинг 23.8. Обработчик события OnClick кнопки рисования

#define PI 3.14159
float X, Y; // Переменные функции
int PX, PY; // Координаты пикселов
Form1->Button4Click( 0 );
Image1->Canvas->MoveTo(0,Image1->Height/2);
for(PX=0; PXWidth; РХ++)
X=PX*4*PI/Image1->Width;
switch(n) // Вычисление функций

case 1: Y=m*sin(X) ; break;
case 2: Y=m*X*sin(X*X); break;
case 3: Y=m*cos (X)*sin(X) ; break;
default: break;
>
PY=Image1->Height- (Y+1) *Image1->Height/2;
Image1->Canvas->LineTo (PX, PY) ;
>

Первая из этих строк описывает константу PI , принимающую значение числа Пифагора. Далее следует описание переменных Х, Y, PX и PY, служащих переменными функции и координатами точек рисунка.

После этого следует вызов функции обработчика события OnClikкнопки очистки экрана, созданной нами ранее и предназначенной для очистки канвы компонента Image(то есть рисунка на экране). Далее вписана строка установки пера для рисования в левую среднюю точку экрана. После этой строки в программе присутствует оператор для организации цикла вычисления значения переменной y для множества значений точек РХ экрана от 0 до максимальной величины ширины экрана в пикселах. Переменная Х вычисляется в самом цикле. Одновременно масштабируется ее размер по вертикали экрана.

Оператор switch служит для сравнения номера выбранной функции и вычисления для нее значения переменной Y.
Функции могут быть произвольными. В дальнейшем при необходимости можно будет изменять и расширять список этих функций. Далее в программе вычисляется значение координат PY и рисуется фрагмент линии функции.
В обработчик события OnClickкнопки + (плюс) вставьте строки удвоения коэффициента функции и вызова обработчика перерисовки графика функции, который принадлежит кнопке рисования Button1:

m=m* 2 ;
Forml->ButtonlClick( 0 );

В обработчик события OnClickкнопки — (минус) вставьте строки уменьшения вдвое коэффициента функции и тот же обработчик перерисовки графика функции:

m=m/ 2 ;
Forml->ButtonlClick( 0 );

Наконец, для кнопки выбора функции Button5 впишите обработчик события OnClick, состоящий из строк, приведенных в листинге 23.9.

Листинг 23.9. Обработчик события OnClick кнопки выбора функции

n++; if(n>3) n=l;
switch(n) // Выбор функций
case 1: Button5->Caption=»Y=m*sin(X)»; break;
case 2: Button5->Caption=»Y=m*X*sin(X*X)»; break;
case 3: Button5->Caption=»Y=m*cos(X)*sin(X)»; break;
default: break;
>

Здесь будет происходить автоматический инкремент номера функции и присвоение ему начального значения при превышении максимального значения п>3 . В зависимости от номера функции свойство Captionкнопки Buttonsбудет менять свое значение на строку с записью самой математической функции.
Для завершения программы необходимо задать начальные значения для переменных масштаба и номера функции. Это делается записью программных строк инициализации переменных m и п в теле функции формирования формы. Здесь же необходимо вписать вызов обработчика события OnClickдля кнопки очистки экрана. В конечном виде функция формирования формы должна иметь запись, соответствующую листингу 23.10.

Листинг 23.10. Функция формирования формы

__fastcall TForm1: :TForm1 (TComponent* Owner)
m= 0.05 ; n= l ;
Forml->Button4Click( 0 );
>

Теперь запустите приложение и проверьте его работу. Результат работы программы при выводе на экран функции Y=m*x*sin(x*x)представлен на рис. 23.4.

Результат работы программы

Рис. 23.4. Результат работы программы

В этой программе мы использовали не только методы, но и некоторые функции, например sin(x) и cos(x) . Среда разработки Borland C++Builder 6 имеет огромное количество встроенных библиотек с готовыми к применению функциями, что позволяет писать мощные и элегантные программы. Для знакомства с функциями можно прибегнуть к встроенной справочной системе среды разработки, вызвав ее нажатием клавиши или +, когда курсор редактора находится на самой функции. Аналогично можно поступать при знакомстве с другими методами, не рассмотренными здесь.

Кроме того, среда разработки имеет встроенный суфлер кода, который автоматически выводит на экран список доступных методов, свойств и функций объектов при вводе символа «->», «.» или «(» после записи имени объекта.
Полезной является комбинация клавиш +, вызывающая список доступных функций и методов для объекта, на котором расположен курсор редактора.
Комбинация клавиш + открывает окно с перечнем функций-заготовок, которые выбираются программистом с помощью стрелок курсора и вставляются в программу после нажатия клавиши .
Этими замечательными инструментами среды разработки удобно пользоваться для вызова встроенной справочной системы, ускорения ввода кода программы и исключения ошибок в записи программных строк

Источник: radio-hobby.org

Borland c программы пример

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

Borland C++ Builder

В этом разделе находятся программы, написанные в среде разработки Borland C++ Builder (я использовал шестую версию). Обратите внимание, что тексты программ, описываемых в данном разделе, представляют собой только ту часть, что добавляется при программировании в файл Unit1.cpp. При этом каждый раз по умолчанию считается, что в реальном файле присутствуют также и тот код, что генерируется автоматически при создании нового проекта. При небольшом размере большинства этих программ удаление 16 строк кода дает заметную экономию места.

Источник: www.trivialcoding.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru