- •Практическая работа № 1 "Элементы интерфейса Delphi"
- •1. Общие положения
- •1. 1. Главное окно осуществляет основные функции управления проектом создаваемой программы.
- •2. Создание и сохранение проекта и файла модуля
- •Задание
- •Практическая работа № 2 "Разработка первого проекта"
- •1. Постановка задачи
- •2. План разработки программы
- •3. Краткое описание плана разработки программы
- •4. Задание
- •Практическая работа № 3 "Разработка проекта диалог"
- •1. Постановка задачи
- •2. План разработки программы
- •3. Задание
- •Практическая работа № 4 "Разработка проекта справочник"
- •1. Постановка задачи
- •2. План разработки программы
- •3. Задание
- •Практическая работа № 5 "Разработка проекта Словарь"
- •Постановка задачи
- •2. План разработки программы
- •3. Задание
- •Практическая работа № 6 "Разработка проекта Ваш вес"
- •Постановка задачи
- •2. План разработки программы
- •Пояснение
- •3. Задание
- •Обработчик исключений строится в виде таких конструкций:
- •Практическая работа № 7 "Разработка проекта Цвета в формате rgb"
- •Постановка задачи
- •Пояснения: новым в этой программе будет использование:
- •Полос прокрутки ScrollBar (страница палитры компонентов Standard) в качестве ввода данных,
- •Функций преобразования значений цветовых составляющих – tColorRef.
- •План разработки программы
- •3. Задание
- •Практическая работа № 8 "Тест по информатике"
- •1. Постановка задачи
- •2. План разработки программы
- •3. Задание
- •Практическая работа № 9 "Тест по физике"
- •1. Постановка задачи
- •2. План разработки программы
- •3. Задание
- •Практическая работа № 10 "Разработка теста по географии"
- •1. Постановка задачи
- •2. План разработки программы
- •Создать Титульную форму.
- •Создать форму Меню.
- •Создадим переход с Титульной формы на форму Меню. Для этого нужно перейти на Титульную форму.
- •6.2. Удалите компоненты кнопок ok и Help.
- •6.4. Измените название формы, для чего в Object Inspector откройте список объектов, выберите PagesDlg:
- •7.4. Сохраните выполненную работу (File – Save All). Запустите программу на выполнение и проверьте правильность ее работы:
- •Переход с Титульной формы на форму Меню;
- •Переход с формы Меню на форму Тестирования;
3. Задание
-
Изменить интерфейс программы: шрифты, цвет экрана и букв.
Подсказка. Возможно, придется в коде подкорректировать количество пробелов.
-
Сделать так, чтобы когда курсор мыши находится в поле ListBox1, появлялась подсказка о том, что надо сделать.
Подсказка. Воспользуйтесь свойствами Hint (текст сообщения), Showhint (показывать ли сообщение) компонента ListBox1.
-
Внести изменения в программу, чтобы для Цвета и Формата RGB использовались две отдельных компоненты Label.
Как изменится программа, если исходные данные о таблице цветов будут заданы в массиве?
Практическая работа № 5 "Разработка проекта Словарь"
-
Постановка задачи
Разработать программу, с помощью которой пользователь мог бы составить словарь новых терминов. При необходимости в этот словарь можно вносить изменения, дополнять или сокращать его. При выборе термина на контрольной панели появляется его номер и общее количество слов в словаре.
Рисунок 10
Пояснения: новыми в этой программе являются комбинированный список ComboBox на странице палитры компонентов Standard, объединяющий строку ввода c компонентом ListBox, выключатель CheckBox на странице палитры компонентов Standard, а также функция MessageDlg.
2. План разработки программы
-
Открыть новый проект.
Рисунок 11
-
Разместить в форме компоненты в соответствии с рисунком 11.
-
Сохранить проект под именем, например, Pr4.pas и Pr4.dpr
-
Запустить программу, затем закрыть окно проекта кнопкой Выход.
-
Выполнить следующие действия:
Выделенная компонента |
Окно инспектора объектов |
Имя свойства |
Действие |
BitBtn1 |
Properties |
Caption |
&Выход |
|
Kind |
bkClose |
|
ComboBox1 |
Propeties |
Text |
Вставить пробел |
|
|
Items |
Дважды щелкнув мышью, открыть String list editor. Ввести несколько терминов, сохранить их в файле glostext.txt, предварительно убедившись, что выбрана нужная директория (см.практическую работу №4 п.7). |
-
Запустить программу, щелкнуть на стрелке компонента ComboBox1, выбрать из открывшегося списка любой термин, а затем убедиться, что текст, набираемый в строке ввода, в список не вносится. После этого закрыть проект кнопкой Выход.
-
Выполнить следующие действия:
Выделенная компонента |
Окно инспектора объектов |
Имя свойства |
Действие |
Button1 |
Propeties |
Caption |
Добавить |
|
Events |
OnClick |
ComboBox1.Items.Add (ComboBox1.Text); if ComboBox1.ItemIndex = -1 then ComboBox1.Text :=‘’;
Последний оператор очищает строку ввода после того, как текст из нее попадает в список. |
-
Запустить программу и убедиться, что набранные в строке ввода слова после нажатия кнопки Добавить добавляются в список ComboBox1.
-
Выполнить следующие действия:
Выделенная компонента |
Окно инспектора объектов |
Имя свойства |
Действие |
Button2 |
Propeties |
Caption |
Удалить |
|
Events |
OnClick |
if MessageDlg('Вы действительно хотите удалить запись?', mtWarning, [mbYes, mbNo], 0) = mrYes then ComboBox1.Items.Delete(ComboBox1.ItemIndex); |
Пояснения.
Данное условие означает, что при нажатии кнопки Удалить появится диалоговое окно с вопросом 'Вы действительно хотите удалить запись?' с двумя кнопками Yes и No. Только при нажатии кнопки Yes предварительно выбранный термин будет удален из списка.
MessageDlg является функцией с четырьмя аргументами:
-
Сообщение, которое нужно отобразить, в одинарных кавычках.
-
Тип диалогового окна - константы: mtWarning, mtError, mtInformation, mtConformation, определяющие специальную пиктограмму и заголовок диалогового окна.
-
Список констант в квадратных скобках, определяющих присутствующие в окне кнопки. Возможные значения - mbYes, mbNo, mbCancel, mbHelp.
-
Число, с которым ассоциирована тема справки. Оно отлично от нуля, если в окне присутствует кнопка mbHelp, а программа имеет связанный с ней файл справки Windows.
Функция MessageDlg возвращает константу, определяющую нажатую пользователем кнопку.
-
Если запустить программу, добавить в список и (или) удалить несколько строк, закрыть ее, а затем снова запустить, заметим, что внесенные изменения не сохранились. Это связано с тем, что в ComboBox загружается первоначальный список.
-
Выполнить следующие действия:
Выделенная компонента |
Окно инспектора объектов |
Имя свойства |
Действие |
Button4 |
Propeties |
Caption |
Сохранить |
|
Events |
OnClick |
ComboBox1.Items.SaveToFile (‘glostext.txt’); |
Form1 |
Events |
OnCreate |
ComboBox1.Items.LoadFromFile (‘glostext.txt’); |
Пояснения.
Теперь при создании формы в список ComboBox1 загружается содержимое файла ‘glostext.txt’, а измененный список запоминается в нем при нажатии кнопки Сохранить.
-
Выполнить следующие действия:
Выделенная компонента |
Окно инспектора объектов |
Имя свойства |
Действие |
Button3 |
Propeties |
Caption |
Редактировать |
ComboBox1 |
Events |
OnClick |
num:= ComboBox1.ItemIndex; Предварительно описать в разделе Var целочисленную переменную num. |
Button3 |
Events |
OnClick |
ComboBox1.Items.Delete (num); ComboBox1.Items.Add (ComboBox1.Text); if ComboBox1.ItemIndex = -1 then ComboBox1.Text:=‘’; |
Пояснения.
-
Для исправления ошибок, замеченных в строках списка, выделенную строку надо удалить из списка, а исправленную строку (т.е. содержимое строки ввода) добавить в список.
-
Новая переменная num необходима для сохранения номера выбранной строки. При внесении изменений выбранной строкой становится строка ввода, для которой ItemIndex = -1.
-
Для кнопок Добавить, Редактировать, Удалить для сохранения внесенных изменений необходимо добавить:
Выделенная компонента |
Окно инспектора объектов |
Имя свойства |
Действие |
|
Events |
OnClick |
ComboBox1.Items.SaveToFile (‘glostext.txt’); |
-
Запустить программу и убедиться, что при выборе строки, исправив ее, а затем нажать кнопку Редактировать, то измененная строка попадет в конец списка.
-
Предусмотреть режим работы со списком, допускающий только чтение.
Пояснения.
Комбинированные списки бывают 3 типов:
простые (simple) - список всегда открыт;
раскрывающиеся (drop down) - список свернут;
неизменяемые (drop down list) - список свернут и возможен только выбор элемента из списка.
Выделенная компонента |
Окно инспектора объектов |
Имя свойства |
Действие |
CheckBox1 |
Propeties |
Caption |
Только чтение |
|
Events |
OnClick |
if CheckBox1.Checked = False then ComboBox1.Style:= csDropDown else ComboBox1.Style:= csDropDownList;
Свойство Checked у выбранного выключателя имеет значение True, а в исходном состоянии - значение False. |
-
В режиме Только чтение, сделать недоступной кнопку Добавить:
Выделенная компонента |
Окно инспектора объектов |
Имя свойства |
Действие |
CheckBox1 |
Events |
OnClick |
if CheckBox1.Checked = false then Button1.Enabled := true else Button1.Enabled := false; |
Аналогично сделать недоступными кнопки Редактировать, Удалить, Сохранить.
-
Сохранить проект, запустить и протестировать его.