Ф ПК 705-12-2017
«ПОЛИТЕХНИКАЛЫҚ КОЛЛЕДЖІ» МКҚК
План учебного занятия
(теоретического или производственного обучения)
Тема занятия
| Стандартные компоненты
| Наименование модуля /дисциплины
| ПМ 04 Разработка компонентов проектной и технической документации с использованием графических языков спецификаций/
ПМ 04.1 Алгоритмизация и программирование
| Подготовил педагог
|
Убайдуллаева Индира Медетхановна
| «___»________2022 г.
| 1.Общие сведения
| Курс, группы
| 3 курс, группа 102
| Тип занятия
| Комбинированное занятие №1
| 2. Цели, задачи
| Изучить стандартные компоненты библиотеки VCL
| 3. Перечень ожидаемых результатов и профессиональных умений, которыми овладеют обучающиеся в процессе учебного занятия
| Образовательная: обеспечить усвоение для студентов и приобрести теоретические и практические навыки по работе с стандартными компонентами
Воспитательная: формирование самостоятельности и ответственности при изучении нового материала, активизировать у студентов формирование познавательной потребности, интереса к предмету.
Развивающая: развивать познавательный интерес, речь, внимание, аналитическое мышление, формировать информационную культуру и потребность в приобретении знаний и навыков использования программирования в учебно-познавательной деятельности.
| 4. Необходимые ресурсы
| 1. Шилдт, Г. С++ Базовый курс: — М.: Osborne, 2014.
2. Павловская Т.А., Щупак Ю.А. С\С++ Структурное программирование. Практикум - СПб.: Питер, 2016.
3. https://intuit.ru/studies/courses/16740/1301/lecture/25624 ЭУМК Алгоритмизация.Введение в язык программирования С++
4. https://stepik.org Введение в программирование (C++)
5. https://stepik.org Основы C/C++ для спортивного программирования
6. https://stepik.org Задачи по программированию на языке C++
| 5. Ход занятия
| Структура занятия
|
Время
| 5
| 10
| 15
| 20
| 25
| 30
| 35
| 40
| 45
| 50
| 55
| 60
| 65
| 70
| 75
| 80
| 85
| 90
|
| 3
| 7
|
|
| 15
|
| 15
|
|
|
| 20
|
|
|
| 20
| 7
|
| 3
|
| № элемента
|
5.1
|
5.2
|
|
|
5.3
|
|
5.4
|
|
|
|
5.5
|
|
|
|
5.6
|
6
|
|
7
|
| Использование
НП, ТСО и др
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| №
элемента
|
Элементы занятия, учебные вопросы, формы
и методы обучения
|
Добавления, изменения,
замечания
| 5.1 5.2 5.3
5.4
5.5
5.6
| Организационная часть:
Приветствие, отметка отсутствующих, мобилизация внимания.
Актуализация опорных знаний учащихся:
Преподаватель задает вопросы:
Приведите примеры алгоритмов. Охарактеризуйте программирование. Из чего состоит процесс программирования и кодирования Разбор примеров программ
Изложение нового материала:
Демонстрационное объяснение нового материала, обсуждение практических задач, ситуаций :
Преподаватель объясняет тему и ход работы, используя ПК и интерактивную доску. Во время объяснения используется метод демонстрации.
Зарегистрироваться на курс https://stepik.org Введение в программирование (C++) – изучить Введение, Знакомство со средой. Целые числа Самостоятельная работа студентов по выполнению задания:
Студенты самостоятельно изучают по данной ссылке
https://intuit.ru/studies/courses/16740/1301/lecture/25624 - адрес ЭУМК
Зарегистрироваться на курс Aлгоритмизация. Введение в С++
Изучите лекцию 1 и пройдите тест к ней.
Составление опорного конспекта.
Составление пяти вопросов по изученному материалу
Работа над глоссарием по программированию Закрепление изученного материала
Опрос по составленному опорному конспекту. Ответы на вопросы. Прослушивание глоссария Групповая работа
Взаимопроверка конспектов
Групповая проверка вопросов и ответов
|
| 6.Рефлексия по занятию
| (Закрепление и формирование усвоенных знаний, умений, навыков, подведение итогов урока)
Преподаватель задает вапросы студентам по методу мозгового штурма. Студенты должны отвечать устно.
Что такое компонент. Основные стандартные компоненты Основные страницы библиотеки
| 7. Домашнее задание
| Работа на онлайн платформе Stepik Введение в программирование (C++)
https://sites.google.com/site/erinaprogram/theory/01-programming-languages реферат, тест
https://prog.bobrodobro.ru/68552 изучить
Учебный материал:
https://stepik.org/course/363/promo Введение в программирование (C++) https://intuit.ru/studies/courses/16740/1301/lecture/25624 https://sites.google.com/site/erinaprogram/theory/9-vcl
| Занятие 1 Стандартные компоненты
Библиотека Визуальных Компонент позволяет программистам визуально создавать программные приложения, не прибегая более к кодированию классов "вручную", или кодированию в рамках стандартных библиотек MFC (Microsoft Foundation Class), или OWL (Object Windows Library).
Программист создает законченное приложение посредством интерактивного взаимодействия с интегрированной визуальной средой C++Builder, используя компоненты VCL для создания интерфейса программы с пользователем и с другими управляющими элементами: обслуживания баз данных, контролируемого ввода параметров и т.д. Характерная для C++Builder методика визуального стиля разработки программного обеспечения не применяется множеством других систем программирования.
С точки зрения прикладного программиста компонентный объект представляет собой законченную конструкцию, содержащую свойства, методы и события. В отличие от разработчика компонент, пользователю компонент безразлично, от какого класса произведена данная компонента.
Любая компонента может находиться во владении (ownership) других компонент, но не все компоненты могут являться владельцами. Свойство компоненты Owner (Владелец) содержит ссылку на компоненту, которая ею владеет. Владелец ответствен за освобождение тех компонент, которыми владеет, когда сам разрушается. Так в процессе конструирования формы, она автоматически становится владельцем всех компонент, размещенных на ней, даже если часть их размещена на другой компоненте, такой как TPanel. Владение применимо не только к видимым, но и к невидимым (Ttimer, DataSource) компонентам.
Определение класса в языке C++ содержит инкапсуляцию членов данных и методов, оперирующих с данными и определяющих поведение объекта. Эта концепция всех систем ООП принята в VCL.
VCL позволяет манипулировать видом и функциональным поведением компонент не только с помощью методов (как это делается с обычными классами), но и посредством свойств и событий, присущих только классам компонент.
Свойства представляют собой расширение понятия членов данных. Разрешены любые типы свойств, за исключением файлового типа. В отличие от члена данных, свойство не хранит данные, однако его методы чтения и записи позволяют получить доступ к защищенному члену данных объекта. C++Builder использует ключевое слово _property для идентификации свойств.
Основой технологии визуального программирования являются визуальные компоненты, которые пользователь видит на экране и с которыми, возможно, взаимодействует во время выполнения программы. Все компоненты имеют методы, свойства и события, которые описывают характеристики отображения, такие как положение компонента, размер, вид курсора или подсказки, методы прорисовки или перемещения и реакция на действия пользователя.
1. Разделы палитры компонентов VCL
Палитра компонентов VCL — библиотеки визуальных компонентов C++Builder, имеет ряд разделов, в которых скомпонованы пиктограммы всех компонентов, предопределенных в C++Builder. В C++Builder XE4 палитра компонентов включает следующие основные разделы Таблица 1. Разделы палитры компонентов Раздел
| Описание
| Standard
| Стандартные, наиболее часто используемые компоненты
| Additional
| Дополнительные, дополнение предыдущих
| Win32
| Компоненты в стиле Windows 95/98 и NT
| System
| Системные, такие компоненты, как таймеры, плееры и ряд других
| Win 3.1
| Компоненты для Windows 3.х
| Dialogs
| Системные диалоги типа "Открыть файл", "Сохранить файл", "Шрифт" и пр.
| Data Access
| Компоненты доступа к данным в БД
| Data Controls
| Компоненты для визуализации данных из БД
| Fast Report 4.0, Fast Report 4 exports
| Компоненты для быстрой подготовки отчетов
| Internet
| Компоненты для работы в Интернет
| Samples
| Образцы: различные интересные, но не до конца документированные компоненты
| Следует обратить внимание на то, что использовать в 64-х и 32-разрядных приложениях компоненты страницы Win 3.1 не рекомендуется. Многие из них заменены более эффективными компонентами.
2. Компоненты страницы Standard
Для иллюстрации применения основных компонентов страницы Standard палитры компонентов VCL создайте форму, показанную на рисунке 1 и используйте коды, приведенные ниже.
Рис. 1. Расположение компонентов на форме Используемые компоненты:
TLabel - надпись, метка; TEdit - поле ввода; TButton - кнопка; TMemo - многострочный текст; TListBox - список; TComboBox - выпадающий список; TRadioButton - переключатель; TCheckBox - флажок; TRadioGroup - группа переключателей; TScrollBar - полоса прокрутки.
1. Компонент TLabel (Надпись, метка) - используется для отображения текста в форме, который нельзя изменять непосредственно через графический интерфейс пользователя, хотя в программе с помощью надписи мохно выводить любой текст Свойство, метод, событие
| Описание
| Caption
| Текст, размещенный в компоненте
| AutoSize
| Если равно true, то размер компонента подгоняется под размер выводимого текста. При значении false размер надписи задается фиксированно во время проектирования
| WordWrap
| При постоянных размерах компонента устанавливает режим переноса слов.
| Color
| Цвет фона надписи
| Font
| Параметры шрифта надписи
| Alignment
| Выравнивание текста надписи по горизонтали: taCenter - по центру, taRightJustify - по правому краю, taLeftJustify - по левому краю
| Layout
| Выравнивание текста надписи по вертикали: tlCenter - по центру, tlTop - по верхнему краю, tlBottom - по нижнему краю
| Transparent
| Прозрачный фон надписи
| 2. Компонент TEdit (Поле ввода) - используется для хранения текста, который можно помещать в данный компонент как во время проектирования, так и во время выполнения программы Свойство, метод, событие
| Описание
| Text
| Текст, вводимый в поле ввода
| MaxLength
| Максимальное количество символов в поле ввода. Если равно 0, то неограничено.
| CharCase
| Регистр вводимых символов: ecLowerCase - строчные, ecUpperCase - прописные, ecNormal - обычные
| PasswordChar
| Скрывает вводимый текст, отображая вместо него заданный символ. Значение #0 отключает этот режим
| ReadOnly
| Только чтение. Если равно true, то во время выполнения пользователь не сможет поменять значение, введенное в поле ввода.
|
//---------------------------------------------------------------------------
void __fastcall TForm1::Edit1KeyPress(TObject *Sender, char &Key)
{
Set < Char, '0', 'Z' > Dig;
Dig << '0' << '1' << '2' << '3' << '4' << '5' << '6' << '7' << '8' << '9';
if ( ! Dig.Contains(Key)) { Key = 0; Beep(); }
}
//---------------------------------------------------------------------------
| 3. Компонент TButton (Кнопка) - служит для инициализации пользователем выполнения какого-либо действия в приложении Свойство, метод, событие
| Описание
| Caption
| Надпись на кнопки. Возможность назначения комбинации быстрых клавиш - символ "&".
| Cancel
| Срабатывание при нажатии клавиши Esc
| Default
| Кнопка "по-умолчанию": срабатывание на нажатие клавиши Enter.
| 4. Компонент TMemo (Область просмотра) - предназначен для вывода на экран нескольких строк текста Свойство, метод, событие
| Описание
| Lines
| Содержит все строки текста
| ScrollBar
| Определяет наличие полос прокрутки: ssBoth - обе полосы, ssHorizontal - горизонтальная, ssVertical - вертикальная
| WantReturns
| Разрешает вводить символы "Конец строки" (нажатие Enter)
| WantTabs
| Разрешает вводить символы табуляции
|
5. Компонент TListBox (Список) - представляет собой список строк с возможностью выбора одной или нескольких Свойство, метод, событие
| Описание
| Items
| Содержимое списка (список строк, тип TString)
| Columns
| Количество столбцов в списке
| ItemIndex
| Номер выделенного элемента (свойство доступно только для чтения)
| MultiSelect
| Позволяет выбрать несколько элементов (через Shift или Ctrl)
| SelCount
| Число выделенных строк списка (свойство доступно только для чтения)
| Selected
| Массив типа Boolean со списком выделенных строк
| Sorted
| Отсортированный список в алфавитном порядке
|
//---------------------------------------------------------------------------
void __fastcall TForm1::Button3Click(TObject *Sender)
{
Memo1->Lines->Add("Выбрана строка номер: "+IntToStr(ListBox1->ItemIndex+1));
Memo1->Lines->Add(ListBox1->Items->Strings[ListBox1->ItemIndex]);
}
//---------------------------------------------------------------------------
|
5. Компонент TComboBox (Выпадающий список) - представляет собой вариант списка с присоединенным дополнительным полем, в котором отображается выбранный элемент списка Свойство, метод, событие
| Описание
| Items
| Содержимое списка (список строк, тип TString)
| ItemIndex
| Номер выделенного элемента
| Text
| Выбранный элемент списка или введенный пользователем текст
| Style
| Режим работы компонента: csDropDown - раскрывающийся список с возможностью редактирования, csDropDownList - раскрывающийся список без возможности редактирования, csSimple - список не является раскрывающимся с возможностью редактирования
| DropDownCount
| Максимальное число элементов, одновременно отображаемых в видимой части списка
|
//---------------------------------------------------------------------------
void __fastcall TForm1::Button5Click(TObject *Sender)
{
Memo1->Lines->Add(ComboBox1->Text);
Memo1->Lines->Add("Номер выбранной строки: "+IntToStr(ComboBox1->ItemIndex));
}
//---------------------------------------------------------------------------
|
6. Компонент TRadioButton (Переключатель) - предназначен для выбора одного значения из ряда возможных Свойство, метод, событие
| Описание
| Alignment
| Положение подписи
| Checked
| Состояние переключателя (true - включен)
| 7. Компонент TCheckBox (Флажок) - используется для фиксации включенного или выключенного состояния Свойство, метод, событие
| Описание
| Alignment
| Положение подписи
| Checked
| Принимает значение true, если флажок установлен, и false, если он сброшен
| AllowGrayed
| Флажок имеет три состояния: сброшен, частично установлен, установлен
| State
| Состояние флажка (удобно при трех состояниях)
|
//---------------------------------------------------------------------------
void __fastcall TForm1::Button6Click(TObject *Sender)
{
switch (CheckBox1->State)
{
case cbUnchecked: Memo1->Lines->Add("Флажок не отмечен");
break;
case cbChecked: Memo1->Lines->Add("Флажок отмечен");
break;
case cbGrayed: Memo1->Lines->Add("Флажок частично отмечен");;
break;
}
if (RadioButton1->Checked) Memo1->Lines->Add("Выбрано 'Да'");
if (RadioButton2->Checked) Memo1->Lines->Add("Выбрано 'Нет'");
}
//---------------------------------------------------------------------------
void __fastcall TForm1::CheckBox2Click(TObject *Sender)
{
if (CheckBox2->Checked)
Form1->Font->Style=Form1->Font->Style << fsItalic;
else Form1->Font->Style=Form1->Font->Style >> fsItalic;
}
//---------------------------------------------------------------------------
| 8. Компонент TRadioGroup (Группа переключателей) - обеспечивает поддержку работы групп переключателей Свойство, метод, событие
| Описание
| Caption
| Заголовок группы переключателей
| Items
| Перечисление названий переключателей в группе
| ItemIndex
| Номер выделенного переключателя. Если ничего не выбрано, равен -1
|
//---------------------------------------------------------------------------
void __fastcall TForm1::RadioGroup1Click(TObject *Sender)
{
switch (RadioGroup1->ItemIndex)
{
case 0: Form1->Color = clSilver;
break;
case 1: Form1->Color = clBlue;
break;
case 2: Form1->Color = clYellow;
break;
case 3: Form1->Color = clRed;
break;
}}
//---------------------------------------------------------------------------
| |