- •Введение
- •Общие указания к выполнению практических работ
- •Практическая работа №1
- •Теоретическая часть
- •Пример выполнения задания
- •Задание:
- •Спецификация программы:
- •Постановка задачи:
- •Блок-схема алгоритма программы
- •Варианты заданий
- •Контрольные вопросы
- •Практическая работа №2
- •Теоретическая часть
- •Методы стратегии ‘белого ящика’
- •Метод покрытия операторов
- •Метод покрытия решений (покрытия переходов)
- •1.3 Метод покрытия условий
- •1.4 Критерий решений (условий)
- •1.5 Метод комбинаторного покрытия условий
- •Порядок выполнения практической работы
- •Контрольные вопросы
- •Практическая работа №3
- •Теоретические часть
- •Задание 1
- •Задание 2
- •Контрольные вопросы
- •Практическая работа №6
- •Описание практической работы Теоретические сведения
- •Операторы обнаружения и обработки исключений
- •Задание 1
- •Задание 2
- •Задание 2
- •Контрольные вопросы
- •Практическая работа №8
- •Описание лабораторной работы Задание 1
- •Задание 2
- •Методы компонента tMemo
- •Задание 1
- •Задание 2
- •Задание 3
- •Контрольные вопросы
- •Практическая работа №10
- •Теоретическая часть
- •Класс Tstrings
- •Задание 1
- •Задание 2
- •Задание 3
- •Основные свойства компонента StringGrid
- •Описание лабораторной работы Задани 1
- •Задание 2
- •Задание 1
- •Контрольные вопросы
- •Практическая работа №13
- •Теоретическая часть
- •Описание лабораторной работы
- •Контрольные вопросы
- •Практическая работа №14
- •Теоретическая часть RadioGroup, RadioButton и GroupBox - группы радиокнопок
- •Свойства компонента CheckBox
- •Свойства компонента RadioButton
- •Button и BitBtn - управляющие кнопки
- •Свойства компонента BitBtn
- •Задание 1
- •Свойства компонента SpeedButton
- •Компонент UpDown
- •Описание лабораторной работы Задание 1
- •Задание 2
- •Задание 3
- •TrackBar и ScrollBar - ползунки и полосы прокрутки
- •Контрольные вопросы
- •Практическая работа №15
- •Теоретические сведения
- •Описание лабораторной работы Задание 1
- •Задание 2
- •Задание 3
- •Задание 4
- •Панели общего назначения — компоненты Panel, GroupBox, Bevel, Splitter
- •Задание 1
- •Задание 2
- •Компонент PageControl
- •Задание 3
- •Задание 4
- •Контрольные вопросы
- •Практическая работа №17
- •Теоретические сведения
- •Описание практическая работы Задание 1
- •Контрольные вопросы
- •Практическая работа №18
- •Теоретические сведения Компонент MainMenu - главное меню
- •Описание лабораторной работы Задание 1
- •Контрольные вопросы
- •Практическая работа №19
- •Теоретические сведения Стандартные диалоги и их фрагменты
- •Задание 1
- •Задание 2
- •Задание 3
- •Контрольные вопросы
- •Практическая работа №20
- •Теоретические сведения
- •I способ
- •II способ
- •Свойства компонента TreeViewl
- •Задание
- •Контрольные вопросы
- •Практическая работа №21
- •Теоретические сведения Компонент tImage
- •Задание 1
- •Ход выполнения
- •Задание 2
- •Ход выполнения
- •Задание 3
- •Задание 4
- •Задание 1
- •Задание 3
- •Задание 4
- •Контрольные вопросы
- •Практическая работа №23
- •Теоретические сведения
- •Практическая работа №24
- •Теоретические сведения Компонент построения графиков и диаграмм Chart
- •Свойства компонента Chart
- •Задание 1
- •Задание 2
- •Контрольные вопросы
- •Практическая работа №25
- •Прием перетаскиваемых объектов
- •Задание 1
- •Контрольные вопросы
Задание 1
Размещаем на форме четыре кнопки Button для вставки, удаления элемента, для проверки, выделен ли элемент списка и для выхода из программы, компоненту Edit для ввода вставляемого элемента списка и компоненты Label и StaticText для вывода результатов.
void __fastcall TForm1::NewBtnClick(TObject *Sender)
{
ListBox1->Sorted=true;
/*После вставки элементы списка будут рассортированы. */
ListBox1->Items->Add(Edit1->Text);
/* Добавление элемента в список из Edit. */
StaticText1->Caption="Bcego "+
IntToStr(ListBox1->Items->Count);
/* Count – количество элементов списка. */
Label1->Caption=" "; Label2->Caption=" ";
}
void __fastcall TForm1::DelBtnClick(TObject *Sender)
{
int ind2; /* Номер выделенного элемента. */
ind2=ListBox1->ItemIndex;
if (ind2>-1) /* Удаление выделенного элемента */.
ListBox1->Items->Delete(ind2);
else ShowMessage(" Hichego ne videleno ");
StaticText1->Caption="Bcego "+
IntToStr(ListBox1->Items->Count);
Label1->Caption=" "; Label2->Caption=" ";
Задание 2
Создайте форму и разместите на ней два компонента ListBox и кнопку:
Заполните ListBox1 через его свойство Items
На кнопке разместите вместо текста символ “>”
Для ListBox1 создайте возможность выделения нескольких строк с последующим переносом их в Компонент ListBox2 с помощью кнопки:
void __fastcall TForm1::Button1Click(TObject *Sender)
{ j=-1;
for (int i=0; i < ListBox1->Items->Count; i++)
if (ListBox1->Selected[i] )
{j++;
ListBox2->Items->Add(ListBox1->Items->Strings [i]);
}}
Задание 3
Создать проект «Выбор продуктов».
На форму поместить компоненты: ListBox, Memo три кнопки. Чтобы добавить строку в ListBox, надо ее ввести в Memo, а при нажатии на кнопку Добавить строка помещается в ListBox. Для удаления элемента нужно выделить его и нажать на кнопку Удалить.
После нажатия на кнопку Ответ выделенные элементы списка должны появиться в поле MEMO (свойство MultiSelect определяет, может ли пользователь выделить более одного элемента списка. Свойство SelCount определяет количество выделенных элементов, а свойство Selected определяет, вы делен ли конкретный элемент).
Компонент TComboBox отображает список строк в развернутом виде или в виде выпадающего списка, позволяет пользователю выбрать из списка необходимую строку или задать в качестве выбора собственный текст.
Компонент TComboBox объединяет функции компонентов TListBox - списка, и TEdit - окна редактирования.
Методы и свойства он имеет почти те же, что и компонент TListBox.
Название |
Тип |
Описание |
Items |
TStrings |
Строки списка |
ItemIndex |
Integer |
Номер выбранной строки |
Style |
TComboBoxStyle |
Стиль: csDropDown – раскрыва- вающийся список и поле ввода, csSimple – поле ввода с обычным списком, csDropDownList, – раскрыва- вающийся список без поля ввода. |
Текст выбранной или написанной пользователем строки находится в свойстве Text.
Индекс выбранного пользователем элемента списка можно определить по свойству ItemIndex (доступно только во время выполнения). Если в окне проводилось редактирование данных, то ItemIndex = -1.
Cвойство Sorted позволяет упорядочить список по алфавиту. При Sorted = true новые строки в список добавляются не в конец, а по алфавиту.
Задание 4
Написать программу расчета количества секунд между двумя моментами времени.
Заполнить вручную списки объектов ComboBox (часы от 0 до 23, минуты и секунды от 0 до 59).
Поле «Прошло секунд» должно быть только для чтения.
Модифицировать программу. Реализовать программное заполнение списков часов, минут и секунд во время запуска программы.
Контрльные вопросы
Назовите основные свойства компонентов ListBox и ComboBox.
Какое свойство компонентов ListBox и ComboBox позволяет упорядочить строки?
Какой метод компонентов ListBox и ComboBox позволяет добавить строку?
Что определяет свойство ItemIndex?
Что означает оператор ListBox1->Selected[1]?
Что означает оператор ListBox1->Items->Delete(i);
Практическая работа №11
Тема: «Обработка массивов с использованием текстовых таблиц»
Цель работы: научиться работать с таблицей строк.
Время выполнения: подготовка – 5 мин; выполнение – 165 мин.; проверка – 10 мин; всего – 180 мин.
Теретическая часть
Компонент StringGrid представляет собой таблицу, содержащую строки. Данные таблицы могут быть только для чтения или редактируемыми. Таблица может иметь полосы прокрутки, причем заданное число первых строк и столбцов может быть фиксированным и не прокручиваться. Таким образом, можно задать заголовки столбцов и строк, постоянно присутствующие в окне компонента. Каждой ячейке таблицы может быть поставлен в соответствие некоторый объект.
Компонент StringGrid находится на вкладке Additional панели компонентов.
