.
Владимир Коробицын
Компоненты: форма, поле вывода текста, образ, электронная кнопка и их свойства. Событие и функция обработки события. Компиляция проекта
После запуска C++ Builder в верхней части экрана вашего компьютера вы увидите главное окно, содержащее систему меню и палитру компонентов, состоящую из множества вкладок, каждая из которых включает в себя свой набор компонентов (объектов). В главном окне расположены так же некоторые часто используемые быстрые кнопки, которые дублируют основные команды системы меню. Как правило, в левой части экрана расположено окно Object TreeView (Окно списка объектов). Немного ниже находится окно Object Inspector (Окно свойств объектов). Это окно разбито на две вкладки Properties (Свойства) и Events (События). В центре экрана вы увидите окно стартовой формы с именем Form1, это и есть ваше будущее приложение для Windows! Это самый главный компонент – фундамент, на котором вы будете строить вашу программу, используя другие необходимые компоненты. Ну и, конечно же, в этом строительстве вы непременно будете заниматься написанием программного кода, который будет отвечать за логику программы. Строки вашей программы вы будете размещать в окне редактирования программного кода, которое можно вызвать, например, кликнув два раза мышью по форме Form1. Это окно имеет и более короткое название – редактор кода. При наборе текста программы редактор кода автоматически выделяет ключевые слова полужирным шрифтом, а комментарии курсивом. Так с первого взгляда будет выглядеть мощная среда программирования Borland C++ Builder. Запустить проект вашего будущего приложение для Windows можно прямо сейчас. Для этого достаточно нажать на функциональную клавишу F9 или кликнуть мышью на кнопку Run в виде зеленого треугольника, находящейся в главном окне. И третья возможность – воспользуйтесь системой меню. После запуска проекта приложения не забудьте завершить его работу стандартным для Windows-приложений образом.
Для начала познакомимся с некоторыми свойствами компонента форма. В окне Object Inspector найдите свойство Color (Цвет) компонента Form1. Установите для этого свойства значение clPurple (фиолетовый). Значение этого же свойства можно изменить во время работы приложения программным способом. Вызовите окно программного кода, кликнув на форму два раза. Затем в окне Object Inspector выберите вторую вкладку Events и кликните на событие OnClick (одиночный клик мышью). Рядом появится небольшое поле ввода. Кликните по этому полю два раза – в окне программного кода появится функция FormClick обработки события OnClick (одиночный клик мышью по форме). В данную процедуру прерывания внутри фигурных скобок впишите инструкцию:
Form1->Color = clRed;
Сначала записывается компонент, затем выбранное его свойство и, наконец, значение этого свойства. Формат такой последовательности записи необходимо запомнить. Название компонента и названия его свойств необходимо записывать с большой буквы. В окне редактирования программного кода это будет выглядеть так:
void __fastcall TForm1::FormClick(TObject *Sender)
{Form1->Color = clRed; //красный цвет для формы}
Среда быстрой разработки C++ Builder автоматически оформляет подобным образом и другие функции обработки событий, понимаемых операционной системой Windows. Здесь словосочетание fastcall буквально означает – быстрый вызов. В нашем примере это быстрый вызов функции FormClick обработки события OnClick. Любая функция обработки события начинается с открывающейся фигурной скобки и завершается закрывающейся фигурной скобкой. Внутри этих скобок вы будете записывать одну или несколько инструкций, которые компьютер должен выполнить при наступлении указанного события. Запись каждой инструкции должна обязательно заканчиваться точкой с запятой.
Проверьте проект приложения в работе. После запуска приложения кликните на форму, ее цвет при этом изменится на красный. Таким образом, вызывая то или иное событие, пользователь будет управлять работой вашего приложения для Windows.
Измените заголовок формы вашего приложения. В окне Object Inspector выберите свойство Caption (Надпись) и запишите в поле ввода новое значение, например, «Мое первое приложение для Windows».
Разместите на форме какой-либо текст. Для чего во вкладке Standard (Стандартные компоненты) панели управления выберите компонент Label (Поле вывода текста), кликнув на значок с изображением буквы «А» и поместите объект Label1 на форме. В окне Object Inspector для свойства Caption задайте новое произвольное значение, например, «Волшебная страна Borland C++ Builder». Увеличьте размер шрифта надписи. Воспользовавшись составным свойством Font (Шрифт), кликните на «плюс» и ниже выберите Size (Размер). Измените размер шрифта с «8» на «24». Выкрасите надпись в желтый цвет: выберите свойство Color и измените его значение на clYellow.
Теперь разместите на форме вашего приложения два изображения. Достигнуть поставленной цели можно, применив компонент Image (Образ). Достаньте этот компонент из панели уп
Если выбранный вами рисунок имеет фон одного цвета, то этот фон при необходимости можно сделать прозрачным, то есть невидимым. Для этого установите свойству Transparent (Прозрачность) значение true.
Если вы хотите изменить размеры изображения, то свойству Stretch (Растяжение) придайте значение true. При этом для свойства AutoSize обязательно установите значение false. К сожалению изображения формата BMP при изменении размера теряют в качестве, а вот виндовские резиновые файлы изображения формата WMF таким недостатком не обладают.
Посмотрим, как можно смонтировать на форму электронную кнопку. Во вкладке Standard панели управления выберите компонент Button (электронная кнопка) и разместите ее на форме. Кликните по вновь созданной кнопке Button1 два раза, и вы окажетесь в функции обработки Button1Click (кликнуть на кнопку). В эту событийную процедуру прерывания впишите инструкцию:
Image1->Visible = false; //скрыть первый рисунок
Это значит, что для компонента Image1 его свойству Visible (Видимость) будет присвоено значение false, что приведет к исчезновению первого рисунка. Запустите проект и проверьте работоспособность электронной кнопки. Изготовьте еще одну кнопку, которая будет заставлять рисунок вновь появляться. Для второй кнопки понадобится инструкция:
Image1->Visible = true; //показать первый рисунок
Создайте еще две кнопки для второго рисунка, которые будут работать аналогично. На каждой кнопке поместите подходящие на ваш взгляд надписи, поясняющие действие кнопок. Для этого у компонента Button свойству Caption придайте значение – название электронной кнопки на русском. И в завершении установите на форме пятую кнопку, которая позволит пользователю закрывать приложение, для чего наберите инструкцию:
Close(); //завершение работы приложения
Проверьте работоспособность созданной кнопки и поместите на ней надпись «Выход», изменив значение свойства Caption.
Для того чтобы сохранить проект приложения, в меню «File» (Файл) выберите команду «Save Project As…» (Сохранить проект как…), выберите нужные вам диск и папку. Сохраните проект. Если вы захотите доработать проект или просмотреть его программный код, кликните по файлу проекта с расширением BPR.
Для создания исполняемого файла вашей программы с расширением EXE зайдите в меню «Project», выберите команду «Make Project1» (Изготовить проект) или с клавиатуры отработать клавишный аккорд Ctrl+F9. Такой процесс сборки файлов проекта в единый EXE-файл называется компиляцией. Исполняемый самостоятельный файл можно перенести на другой компьютер. В том случае, если ваше приложение является мультимедийным, то файлы музыки, звука, видео, например, MID, MP3, WAV, AVI нужно будет скопировать вместе с исполняемым файлом. А вот файлы изображений переносить не надо, так как они впитываются в исполняемый файл в процессе компиляции.
Если вы хотите избавиться от проблем с установкой вашей программы на другом компьютере, связанных с отсутствием на нем необходимых библиотек, то следует изменить некоторые свойства проекта. Для этого войдите в меню «Project», выберите команду «Options…» во вкладке «Linker» уберите галочку «Use dynamic RTL», а во вкладке «Packages» уберите галочку «Build with runtime packages». В первом случае в EXE-файл включается RTL-библиотека времени выполнения, а во втором – динамические библиотеки в которых находятся используемые компоненты и системные функции. При этом размер исполняемого файла существенно увеличится, зато теперь вы сможете перенести его на другой компьютер простым копированием. Файл останется работоспособным также после переустановки операционной системы Windows на вашем компьютере.