методичка. метода по ООП для практики. Лабораторная работа 1. Линейный вычислительный процесс 2 Общие теоретические сведения 2 Создание оконного приложения 6
![]()
|
1.2. Создание оконного приложенияНастройка формыПустая форма в правом верхнем углу имеет кнопки управления, предназначенные для свертывания формы ![]() ![]() ![]() ![]() Для изменения заголовка после вызова окна инспектора объектов (F11) выбирается свойство Caption, и в выделенном окошке вместо стандартного текста Form1 набирается нужный текст, например, «Лаб.раб.1. Гр.610101 Иванова А.». Внимание! Свойства Name (имя) и Сaption (заголовок) у компонент совпадают, но имя менять не рекомендуется, т.к. оно входит в текст программы. Компоненты, предназначенные для ввода-выводаЕсли необходимо ввести из формы в программу или вывести на форму информацию, которая вмещается в одну строку, используют окно однострочного редактора текста, представляемого компонентой Edit, для чего в меню компонент Standard выбирается пиктограмма ![]() В заголовочный файл Unit1.h автоматически вставляется переменная Edit* (1,2,…) класса TEdit. В поле Text (Edit1–>Text) такой переменной будет содержаться строка символов (тип AnsiString) и отображаться в соответствующем окне Edit*. Основные функции преобразования строкStrToFloat(St) – преобразует строку St в вещественное число; StrToInt(St) – преобразует строку St в целое число. FloatToStr(W) – преобразует вещественное число W в строку символов; FloatToStrF(W, формат, n1, n2) – вещественное число W в строку символов под управлением формата: ffFixed – фиксированное положение разделителя целой и дробной частей, n1 – общее количество цифр числа, n2 – количество цифр в дробной части, причем число округляется с учетом первой отбрасываемой цифры; fFfExponent – n1 задает общее количество цифр мантиссы, n2 – количество цифр порядка XX (число округляется); ffGeneral – универсальный формат, использующий наиболее удобную для чтения форму представления вещественного числа; соответствует формату ffFixed, если количество цифр в целой части n1, а само число больше 0,00001, в противном случае соответствует формату ffExponent. FormatFloat(формат, W) – преобразует вещественное число W в строку; IntToStr(W) – преобразует целое число W в строку символов. Например, если значения вводимых из Edit1 и Edit2 переменны x и у имеют целый и действительный типы, соответственно, то следует записать: х = StrToInt(Edit1–>Text); y = StrToFloat(Edit2–>Text); Внимание! При записи числовых значений в окошках Edit* не должно быть пробелов, а разделителем целой и дробной частей обычно является «запятая»! В инспекторе объектов с помощью свойства Font устанавливается стиль, отражаемого в строке Edit* текста. Компонента LabelДанная компонента используется для вывода надписей, для чего в меню компонент Standard выбирается пиктограмма ![]() При установке таких компонент в текст Unit1.h вставляются переменные типа TLabel, в которых хранятся пояснительные строки. Эти строки можно изменять в процессе работы программы, например: Label1->Caption = “”; – «очистка» строки; Label1->Caption = “Не выполняется!”; – вывод строки. Компонента MemoДля вывода результатов работы программы обычно используется окно многострочного редактора текста, представленое компонентой Memo, для чего выбирается пиктограмма ![]() При установки данной компонеты в Unit1.h прописывается переменная Memo1 типа ТMemo. Информация, выводимая построчно в окне Memo1, находится в массиве строк Memo1–>Lines, каждая из которых имеет тип String. Для очистки окна используется метод Memo1–>Clear( ). Для добавления новой строки используется метод Memo1–>Lines–>Add( ). Если нужно вывести числовое значение, то его надо преобразовать к типу AnsiString (см. прил. 4) и добавить в массив Memo1–>Lines, например, вывести int u = 100; double w = –256.38666; в результате записей Memo1–>Lines–>Add (“ Значение u = ”+IntToStr(u)); Memo1–>Lines–>Add (“ Значение w = ”+FloatToStrF(w,ffFixed,8,2)); появятся строки Значение u = 100 Значение w = –256.39 При этом под все число отводится восемь позиций, из которых две позиции занимает его дробная часть. Если выводимая информация превышает размер окна Memo1, то для просмотра используются полосы прокрутки. Обработка событийНапомним, что программа в среде Builder представляет собой набор функций, выполняющих обработку событий, связанных с формой, например, щелчок кнопкой мыши – событие OnClick, создание формы – событие OnCreate. Функция-обработчик FormCreateПри запуске программы возникает событие «создание формы» (OnCreate). Оформим функцию-обработчик этого события, которая обычно используется для инициализации начальных установок, таких, как, например, занести начальные значения исходных данных в соответствующие окна Edit*, очистить окно Memo. Для этого делаем двойной щелчок кнопкой мыши на любом свободном месте формы, после чего в листинг программы (Unit1.cpp) автоматически вносится заготовка для создания функции: ее заголовок … FormCreate (…) и фигурные скобки. Между символами { }, которые обозначают начало и конец функции, соответственно, вставляем нужный текст программы (см. пример, п. 1.4.1). Внимание! Не набирайте заголовки функций-обработчиков вручную. Функция-обработчик нажатия кнопки (Button*Click)Выбрав в меню Standard пиктограмму ![]() Запуск и работа с программойПеред запуском программы на обработку следует сохранить программу, для чего нужно выбрать в меню File пункт Save All. Запустить программу можно, нажав Run в главном меню Run, или клавишу F9, или пиктограмму ![]() Завершить работу программы можно, нажав кнопку ![]() |