Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабы IT / ЛабаDelphi2.doc
Скачиваний:
81
Добавлен:
06.02.2015
Размер:
189 Кб
Скачать
☆

Задание 2.2 Будем изменять толщину и цвет рисуемых мышкой линий

Здесь же сбросьте на форму кнопку Button1 и следующие компоненты:

Компонент

Свойство

Значение свойства

Label1

Caption

Цвет

Label2

Caption

Толщина

Edit1

Text

100000

Edit1

Text

10

Разместите их так как показано на рисунке 4.

Frame4

После щелчка на кнопке цвет и толщина рисуемых линий должны измениться. Также ради интереса выведем текст “УРА” в область с координатами (0,0).

Для этого в обработчике щелчка на кнопке напишите:

Canvas.Pen.Color:=StrToInt(Edit1.Text); //Устанавливаем цвет

Canvas.Pen.Width:=StrToInt(Edit2.Text);//Устанавливаем толщину

Canvas.Font.Size:=18;//Устанавливаем размер шрифта для текста

Canvas.TextOut(0,0,'УРА');//Выводим на форму текст

Frame5

Задание 2.3 Научимся работать с контекстным меню MainMenu в котором определим вкладки для очистки формы и закрытия приложения.

Добавьте на форму контекстное меню MainMenu1 (палитра Standard), щелкните по ней двойным щелчком

Frame6

Затем в свойстве Caption выделенной вкладки напишите “File”, а также добавьте ещё вкладки “Очистить” и “Выход” как показано на рисунке

Frame7

Щелкните двойным щелчком по вкладке “Очистить” и войдите в обработчик щелчка на вкладке – procedure TForm1.N1Click(Sender: TObject).

Здесь надпись “Очистить” это значения свойству Caption объекта с именем N1 который принадлежит объекту MainMenu1, именно в его обработчик мы и зашли.

В этом обработчике напишите следующее:

Canvas.Brush:=Form1.Brush;

{Устанавливаем значение свойства Brush объекта Canvas в значение свойства Brush объекта формы.}

Canvas.FillRect(Form1.ClientRect);

{Методом FillRect объекта Canvas закрашиваем форму её же цветом}

Аналогично щелкните двойным щелчком по вкладке “Выход” и напишите в обработчике:

Close; // завершить программу

Запустите программу. Программа должна работать правильно. Вернитесь в режим программирования.

Задание 3.1 Иногда в Windows–приложениях присутствует что-то наподобие стандартного текстового блокнота (NotePad). Компонент Memo как раз во многом подобен такому блокноту.

У компонента Memo как и у NotePad есть методы записи и загрузки текстовых файлов. Так как компонент Memo работает только с текстовым форматом, то при выводе в него значений их требуется предварительно перевести в текстовый формат операторами FloatToStr или IntToStr.

Создайте новый проект.

Переместите Memo1 на форму. Слегка его растяните и сбросьте кнопку Button1 на форму (рис. 8).

Рис. 8 Демонстрация работы компонента Memo1

С помощью Object Inspector зайдите в свойство Lines компонента Memo1. Для этого щелкните по трем точкам, что справа от надписи Lines (рис.9),

Рис. 9 Свойство Lines компонента Memo1 в Object Inspector

Перед вами откроется окно ввода строк String List Editor(рис. 10). Каждая строка компонента Memo1 является строкой класса TStrings. Вы можете спокойно вводить сюда текст, но в данном задании этого делать не требуется, поэтому просто очистите строки компонента, стерев строку с надписью Memo1.

Рис. 10 Окно ввода строк String List компонента Memo1

Задание 3.2 Выведем 2 текстовых строки в компонент Memo1 при щелчке на Button1.

Зайдите в обработчик щелчка кнопки Button1. Напишите там:

memo1.Lines.Add('Студент');

memo1.Lines.Add('Информатика');

Здесь метод Add() свойства Lines объекта Memo1 добавляет еще одну строку в Memo1, в скобках метода Add() должен быть либо текст между апострофами ‘Студент’, либо переменная строкового типа.

Запустите программу. Убедитесь в правильности ее работы. Вернитесь в режим программирования.

Задание 3.3 Требуется вывести в Memo1 строку «1 2 3 4 5»

Добавьте еще кнопку Button2 на форму. Её обработчик должен быть следующим:

var i:integer; s:string;

begin

s:=’’; //устанавливаем строку пустой

{формируем строку накапливая в ней цифры и пробелы между ними}

for i:=1 to 5 do s:=s+’ ‘+IntToStr(i);

Memo1.Lines.Add(s); // выводим строку в Memo1

end;

Запустите программу. Убедитесь в правильности ее работы. Вернитесь в режим программирования.

Задание 3.4 Требуется вывести в Memo1 матрицу 3x4 заполненную случайными числами в диапазоне от нуля до 100.

Для этого в этом же проекте переместите еще одну кнопку Button3 на форму.

Полный код обработчика щелчка на ней должен быть следующий:

procedure TForm1.Button3Click(Sender: Tobject);

var

I, j:word;//Определяем переменные целого типа индексирующие строку и столбец

massiv:array[1..3,1..4] of word; {Определяем двумерный массив(матрицу) целых чисел }

s:string; //Определяем строку для заполнения её цифрами и последующего вывода

begin

Memo1.Clear;//Очищаем Memo1

randomize;// Инициализируем генератор случайных чисел

for i:=1 to 3 do //Делаем двойной цикл чтобы заполнить массив massiv[I,j]

for j:=1 to 4 do

massiv[I,j]:=random(101);// случайными числами от 0 до 100 функцией random

for i:=1 to 3 do begin // Цикл по строкам с индексом i

s:=''; // очищаем переменную s содержащую строку

for j:=1 to 4 do // Цикл по столбцам с индексом j

s:=s+’ ‘+IntToStr(massiv[I,j]);//Формируем строку s из столбцов j

Memo1.Lines.Add(s);//Выводим строку в Memo1

end;

end;

Рис. 11 Матрица 3x4 заполненная случайными числами в Memo1

Запустите программу. Убедитесь в правильности ее работы. Вернитесь в режим программирования.

автор и разработчик лабораторных

работ по Delphi

доцент кафедры Информационных технологий и систем

кандидат физ.-мат. наук

Санников Е.В.

Соседние файлы в папке Лабы IT