Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курс DELPHI_2003.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
530.71 Кб
Скачать

Пройденный материал на практике

Создадим немного глупый, но использующий все новые возможности проект. Создайте новый проект, переименуйте форму в fMain, а в свойстве Caption укажите "Случайные числа". Сохраните проект в новую папку. Проект назовите RandomNum.

Установите на форму Memo, удалите из него весь текст. Ниже – кнопку с названием "Генерировать".

Рис. 9.2.  Окончательный вид формы

В обработчике нажатий на кнопку впишем такой текст:

procedure TfMain.Button1Click(Sender: TObject);

const

MaxValue = 1000; //записываем максимальный размер случайных чисел

var

a : array [1..100] of Integer; //массив целых чисел из 100 элементов

i : integer; //счетчикдля for

s : String;

begin

//вначале очистим Memo:

Memo1.Clear;

//Заполняем случайными числами от 0 до MaxValue массив a:

for i := 1 to 100 do

a[i] := Random(MaxValue);

//данные из массива добавляем сначала в строковую переменную, затем в Memo:

s := '';

for i := 1 to 100 do

s := s + IntToStr(a[i]) + ', ';

Memo1.Lines.Add(s);

end;

В результате выполнения этого кода мы получим строку s, в которой через запятую будут перечислены 100 случайных чисел от 0 до 1000.

Оператор цикла repeat...Until

Мы уже знаем условный цикл while, изучим еще один. Синтаксис цикла несложный:

repeat <тело цикла> until <условие>;

Если цикл while имел предусловие, то цикл repeat имеет постусловие, которое выполняется после тела цикла. Есть еще отличие – цикл while выполняется до тех пор, пока условие истинно, а цикл repeat будет выполняться, пока условие ложно. В цикле while, если условие изначально ложно, тело цикла никогда не будет выполняться. Repeat выполнит тело цикла по крайней мере, один раз. Затем оператор проверяет условие, и если оно ложно, выполняет тело цикла еще раз, и так до тех пор, пока <условие> не вернет истину. Еще одно замечание: зарезервированные слова repeat..until работают как скобки begin...end, поэтому в теле цикла может быть сколько угодно инструкций, которые уже не нужно заключать в begin..end. Пример:

i := 3;

repeat

i := i + 1;

ShowMessage('i = ' + IntToStr(i));

until i > 10;

Форма About средствами Delphi

Форму About вовсе не обязательно разрабатывать самостоятельно, Delphi уже предоставляет нам такую форму. Нужно будет лишь изменить текст, и при необходимости, картинку.

В предыдущем проекте, где мы выводили случайные числа, создайте главное меню. В этом меню создайте пункты "Файл – Выход" и "Справка – О программе".

Выберите команду "File – New – Other". Откроется окно репозитария, своеобразной коллекции шаблонов и мастеров для создания нужного окна. Это окно имеет множество вкладок, в которых окна и шаблоны разбиты по тематикам. Перейдем на вкладку Forms и выберем шаблон "About box". Сразу же переименуем форму в fName, а свойству Caption новой формы присвоим текст "О программе". Форма имеет вполне законченный дизайн, осталось только вписать нужный текст в компоненты Label и при необходимости, сменить картинку.

Впервойlabelнапишем: "Product Name: RandomNums". Во второй: "Version: 1.0". Имейте в виду, что в мировом сообществе принято давать номера версий программ от 1.0 и выше. Если в следующей версии произошли незначительные изменения, назовите версию 1.1, потом 1.2 и так далее. Иногда даже указывают три цифры: 1.0.1, 1.0.2 и выше, решать вам. Если изменения значительные, практически у вас получилась другая программа, тогда называйте версию 2.0.

В третьей Label напишите "Copyright: свое ФИО". Этот раздел указывает, кто имеет авторское право на продукт. В четвертой Label находится раздел Comments. Здесь нужно очень коротко и по существу написать, что делает ваша программа, для чего она предназначена. Вы можете перевести все на русский язык. Вместо "Product Name" напишите "Программа". "Version" замените на "Версия". "Comments" замените на "Комментарии". А вот слово "Copyright" переводить не нужно, именно таким образом принято указывать авторское право в мировом сообществе.

Если вы сделали форму до конца, сохраните ее и пропишите в раздел uses главной формы. Далее в меню главной формы щелкните дважды по подразделу "О программе" и создайте там обработчик вызова новой формы.

Символ

Символ – это один знак. Любой – буква, цифра, арифметический знак или пробел, знак препинания или подчеркивания... А также специальные символы – переход на новую строку, BackSpace, знак доллара или процент. Тип "символ" в Delphi обозначается Char:

var

c : Char;

begin

c := 'В';

ShowMessage('Вы ввели ' + c);

c := #13;

ShowMessage('Переход на новую' + c + 'строку');

...

Мы уже говорили, что символы берутся из таблицы символов ANSI или UNICODE. Большинство символов используются пользователями, некоторые символы являются служебными. Обратите внимание, что большая буква "А" и маленькая "а" - это разные символы! Также разными символами являются латинская "с" и русская "с", хотя они похожи, как две капли воды.

Нулевой символ не используется, он зарезервирован как полный нуль. Программисты нашли достойное применение этому символу, используя его в событиях ввода текста, когда требуется запретить пользователю ввод каких-либо символов. Служебные символы мы не можем увидеть в текстовом поле. Служебные символы, это <Esc>, <Enter>, <Tab> и другие. Каждый символ обрабатывается компьютером как число от 0 до 255, таким образом, слово "ПРИВЕТ" в памяти машины будет выглядеть как набор цифр: "207 208 200 194 197 210".