2.2.1 Создать программу, которая при выборе из списка с помощью мыши названия цвета и нажатии на кнопку на экране отображает название цвета на русском языке и код цвета в формате RGB. Программа заканчивает свою работу при нажатии кнопки «Close».
План разработки программы:
1) разместить на форме экземпляры компонентов в соответствии с рисунком 2.1;
2) сохранить новый проект – File – Save All. Создать новую папку, дать название «Справочник», открыть папку;
Рисунок 2.1
3) Сохранить код программы и проект под именами, например, Unit1.pas и Project1.dpr.
4) Установить следующие свойства для компонентов:
Выделенный объект | Вкладка окна Object Inspector | Имя свойства/ имя события | Действие |
BitBtnl | Properties | Caption | Установка имени кнопки: «Выход» |
Kind | bk Close | ||
Label 1 | Properties | Caption | Ввод надписи «Справочник записи цвета в формате RGB» |
Label2 | Properties | Caption | Ввод надписи «Цвет Формат RGB» |
Label3 | Properties | Caption | Удаление названия и кода цвета |
5) Запустить программу, затем закрыть окно проекта, щелкнув на кнопке «Выход».
6) Выделить объект ListBox1, найти свойство Items, щелкнуть на кнопке с тремя точками, расположенной справа от него. В появившемся окне встроенного редактора (см. рисунок 2.2) ввести названия цветов, каждый на новой строке.
Рисунок 2.2
7) Сохранить набранный текст под именем color.txt Для этого нажать правую кнопку мыши и выбрать режим Save. Для выхода из встроенного редактора щелкнуть на кнопке ОК.
8) Чтобы при установке курсора мыши в поле List Box1 появлялась подсказка о том, что надо сделать, необходимо воспользоваться свойствами Hint (текст сообщения) - «выделить строку и щелкнуть на кнопке», Showhint (показывать ли сообщение) объекта ListBox1.
9) Активизировать двойным щелчком кнопку «Перевести» и в заготовку обработчика события OnClick поместить следующий код:
сase listBox1.ItemIndex of
0: Label3.Caption:= 'черный ОООООО';
1: Label3.Caption:=' белый FFFFFF';
2: Label3.Caption:=' красный FFOOOO';
3: Label3.Caption:=' зеленый OOFFOO';
4: Label3.Caption:= 'бирюзовый OOFFFF';
5: Label3.Caption:=' синий OOOOFF';
6: Label3.Caption:=' фиолетовый FFOOFF';
7: Label3.Caption:= ' желтый FFFFOO';
8: Label3.Caption:= 'коричневый 996633';
9: Label3.Caption:= ' оранжевый FF8000';
10: Label3.Caption:= ' липовый 8000FF';
11: Label3.Caption:=' серый АОАОАО';
end;
10) Сохранить проект окончательно, запустить и протестировать его.
2.2.2 В целочисленном массиве найти максимальный и минимальный элементы и поменять их местами. Использовать компонент СomboBox –комбинированная строка ввода. Элементы массива вводятся в компонент СomboBox1. При нажатии на кнопку Ввод данные вводятся в память. Элементы новой матрицы, в которой максимальный и минимальный элементы поменялись местами, выводятся в компонент СomboBox2.
Рисунок 2.3
План разработки программы:
1) для нового проекта создать новую папку, например, Combobox;
2) открыть новый проект;
3) со страницы Standard поместить на Form1 компоненты, согласно рисунку 2.3: button1, button2, ComboBox1, ComboBox2.
4) свойство DropDownCount для ComboBox1, ComboBox2 равно 10.
5) в разделе interface описывается массив и используемые переменные: a:array[1..10] of integer; i, min, max, imax, imin:integer;
6) для того чтобы ввести начальные значения, с которыми программа начнет свою работу, в момент создания формы, используется событие OnCreate для формы. Для создания заготовки этого события необходимо выполнить двойной щелчок по форме и поместить там следующие строки:
i:=0;
comboBox1.Clear;
combobox2.Clear;
combobox1.TabOrder:=0;
7) для кнопки Ввод написать обработчик события:
begin
combobox1.items.add(combobox1.Text);
i:=i+1;
a[i]:=strtoint(combobox1.Text);
combobox1.SetFocus;
end;
8) для кнопки Решение написать обработчик события:
procedure Tform1.Button2Click(Sender: Tobject);
var k:integer;
begin
max:=a[1];
maxi:=1;
min:=a[1];
mini:=1;
for k:=2 to 10 do
begin
if max<a[k] then
begin
max:=a[k];
maxi:=i;
end;
if min>a[k] then
begin
min:=a[k];
mini:=i;
end;
end;
a[maxi]:=min;
a[mini]:=max;
for k:=1 to 10 do
combobox2.Items.Add(inttostr(a[k]));
combobox2.DroppedDown:=true;
end;
9) сохранить проект окончательно и запустить его.
Контрольные вопросы
2.3.1 Для чего предназначен компонент ListBox?
2.3.2 Перечислить основные свойства компонента List Box.
2.3.3 Перечислить основные свойства компонента СomboBox.
2.3.4 Какой из компонентов - List Box или СomboBox - обладает свойством MultiSelect?
2.3.5 Какое свойство компонентов ListBox и СomboBox задает элементы списка?
Варианты заданий
Используя компонентыListBox и СomboBox создать приложения для заданий:
1. Создать игру «чепуха»: берутся слова из трех списков - по одному из каждого - и составляются из них предложения. Например, список 1 – названия зверей, список 2 – глаголы, список 3 – наречия.
2. Составить список стран. При выборе страны должно появиться название столицы и ее достопримечательности.
3. В компонент Listbox ввести значения элементов массива из 10 элементов. Если вводится больше 10, то должно появиться сообщение. Переписать этот массив в другой список в обратном порядке. Переписывать можно только в том случае, если правильно введете пароль.
4. Введите элементы массива в список. При выборе элемента должно быть указано, элемент четный или не четный. Если элемент четный, то запись должна быть зеленого цвета, в противном случае лилового.
5. Составьте таблицу часовых поясов: указывается время в Алматы, определить время в столицах мира и крупных городах, которые выбираются из списка.
6. Составить таблицу дней рождения друзей и приятелей, в каком созвездии они родились. Выделить из списка тех, кто родился в феврале.
7. Провести социологический опрос. Студент указывает фамилию (Edit), она заносится в список. Задается вопрос: «Любите ли Вы читать книги». Ответы: да или нет. Если «да», то появляется запись –«молодец», если «нет», то – «надо, надо читать». Составить программу, чтобы было видно, кто читает, а кто нет. Также подсчитать, сколько процентов студентов любить читать книги, а сколько – нет.
8. Составить программу, которая бы указывала, в какой команде играет футболист, какой страны эта команда.
9. Составьте таблицу часовых поясов: по разности с временем по Гринвичу. Вывести страны, которые находятся в одном часовом поясе. Часовой пояс вводится.
10. Определить на какой день недели приходится день рождения пяти Ваших друзей в 2000, 2005,2010 годах
11. При выборе группы должен выводиться список студентов этой группы. При выборе преподавателя должен выводиться список студентов, у которых указанный преподаватель является научным руководителем.
12. Составить фонотеку по жанрам.
13. Определить на какой день недели приходится день рождения Ваших сокурсников в 2000, 2005, 2010 годах и у кого дни рождения под указанным знаком Зодиака.
14. Составьте таблицу часовых поясов: указывается время в Алматы, определить время в столицах мира и крупных городах, которые выбираются из списка.
15. Составить список стран. При выборе страны должно появиться название столицы и ее достопримечательности