![](/user_photo/2706_HbeT2.jpg)
- •«Программирование в интегрированных средах»
- •Лабораторная работа №1 Структура программы, текстовый ввод-вывод
- •Лабораторная работа №2 основные операторы языка с
- •Лабораторная работа №3 обработка массивов информации
- •Лабораторная работа №4 функции
- •Лабораторная работа №5 структуры
- •Лабораторная работа №6 файлы
- •Лабораторная работа №7 указатели и списки
- •Лабораторная работа №8 создание приложений, основанных на диалоговом окне
- •Приложение а требования к оформлению отчета
- •Приложение б - Оформление программного кода
- •Основные типы данных.
- •Основные операции. Арифметические операции.
- •Операции отношения.
- •Логические операции.
- •Побитовые операции.
- •Адресные операции.
- •Другие операции.
- •Основные операторы.
- •Приложение г – технология визуального проектирования
Основные операторы.
Оператор |
Формат |
Примечания и примеры |
1 |
2 |
3 |
Составной |
{ операторы } |
( x=2; y=0; } |
Присваивания |
идентификатор=выражение |
x=3; |
Вызова функции |
ИмяФункции(арг1,...,аргN) |
fclose(file); |
Пустой |
; |
|
Заиершения |
break; |
Прекращает выполнение ближайшего вложенного внешнего оператора switch, while, do или for. |
Продолжения |
continue; |
Передает управление в начало ближайшего внешнего оператора цикла, вызывая начало следующей итерации. |
Возврата |
return; return выражение; |
Прекращает выполнение текущей функции и возвращает управление вызвавшей программе с передачей значения выражения (если оно указано). |
Перехода |
goto метка; |
Управление передается на оператор с указанной меткой. Область действия ограничена текущей функцией. |
Условный |
if (выражение) оператор if (выражение) оператор1 else опратор2 |
Если выражение истинно, то выполняется оператор.Если выражение истинно, то выполняется оператор1 (оператор2 не выполняется). Если выражение ложно, то выполняется оператор2. |
Выбора |
switch(выражение) { case константа: операторы case константа: операторы default: операторы } |
Сравнивает значение выражения с константами во всех вариантах case и передает управление оператору, который соответствует значению выражения. Далее выполняются все операторы подряд, пока не встретится оператор break. Операторы, связанные с меткой default, выполняются, если ни одна из констант не равна значению выражения. |
Цикл с предусловием |
while (выражение) оператор |
Если выражение истинно, то оператор выполняется до тех пор, пока выражение не станет ложным. |
Цикл с постусловием |
do оператор while (выражение) |
Выполняется оператор, затем вычисляется выражение, и если выражение истинно, то оператор выполняется до тех пор, пока оно не станет ложным. |
Цикл с параметром |
for (выражение1; выражение2; выражение3) оператор |
Выражение1 описывает инициализацию цикла; Выражение2 - проверка условия завершения цикла Если оно истинно, то выполняется оператор; Выражение3 вычисляется после каждой итерации. Цикл повторяется, пока выражение2 не станет ложным. |
Приложение г – технология визуального проектирования
Создание проекта программы.
Вначале запустим Visual C++. Зайдем в меню FILE -> NEW..., выберем там Project. Ваша панель должна выглядеть теперь так:
Выберем там MFC AppWizard(exe), это значит вы хотите создать запускаемый файл.
В Project Name задайте имя программы Test. И щелкните OK.
В раскрывшемся окне(STEP1) выбирете Dialog Based. Это означает, что ваша программа будет основана на диалоге. Щелкните Next.
В STEP2 задайте в Please enter title of your dialog имя программы The Test Program. Остальное оставьте без изменения и нажпмите NEXT.
В STEP3 Оставьте все без изменения и щелкните NEXT. Здесь вы указали, что ваша программа будет иметь библиотеку с динамической конпановкой(DLL), а не статической.
В STEP4 Оставьте все без изменения. Посмотрите, чтобы в Class Name было выбрано CTestApp и щелкните FINISH.
Вы закончили создание проекта программы!
Все каркасные файлы для вашей программы написал Visual C++, с помощью мастера настроек MFC AppWizard. MFC - это вещь очень полезная, с помощью нее можно быстро создавать программы, так как все дежурные файлы он пишет сам, что сильно облегчает работу программиста, ведь не писать стандарный набор текста каждый раз!
Проектирование диалоговой панели
"Resourse View" и раскройте пункт Hello Resource, как показано на рис.
Выполните слдеующие действия
Щелкните два раза по надписи IDD_TEST_DIALOG. Справа появится окно проектирования диалоговой панели.
С помощью панели Controls расставьте элементы управления.
Связывание переменных с элементами управления
Рассмотрим как связать окно редактирования и флажки с переменными, с помощью которых мы будем иметь к ним доступ. В частности для окна редактирования нам нужна переменная типа CString, используя эту переменную, мы сможем извлекать текст из окна редактирования, а также изменять его содержимое.
Также нам необходимо связать переменные с флажками, чтобы управлять ими и получать текущие состояния: включено, выключено.
Зайдите в View->ClassWizard и выбирете в закладках Member Variables. В этом пункте вы можете связывать переменные с элементами управления. Ваше окно сейчас должно быть выглядеть так:
Теперь рассмотрим эту закладку.
Project - название вашего проекта.
Class Name - название класса, элементы которого вы будете связывать с переменными. Убедитесь в том, чтобы был выбран класс CTestDlg, потому что именно он отвечает за диалоговую панель, которую вы только что проектировали.
Control IDs - названия элементов управления, с которыми можно связать переменные.
Type - тип переменной, которую вы связываете с элементом диалога.
Member- название переменной, которую вы связываете с элементом диалога.
Выберем в списке Control IDs итендификатор IDC_TEST_EDIT и щелкнем на кнопку Add Varible, выведется такое диалоговое окно:
Рассмотрим его:
Member Varible Name - название переменной, с которой вы хотите связать эелемент управления.
Category - здесь вы можете выбрать категорию переменной. К примеру, Value - это категория переменной, предназначенная для передачи значения переменной Control - а это категория предназначена для управления элементами. К примеру, с помощью переменной такой категории можно менять названия кнопок, добавлять строки в ListBox и многое др.
Varible Type- это тип переменной.
В Member Varible Name зададим название - m_TestEdit и нажмем кнопку OK. Вы связали окно редактирования с переменной m_TestEdit, с помощью которой вы получите доступ к окну редактирования.
Теперь свяжем флажки с переменными, для этого выберем в Member Varible итендификатор IDC_ENABLE_CHECK и нажмем на кнопку Add Varible. Зададим название переменной - m_EnableCheck. Посмотрите, эта переменная имеет категорию Value и тип BOOL. Переменная типа BOOL может принимать два значения TRUE и FALSE. TRUE - правда, а FALSE - ложь. Если флажок отмечен, то переменная будет иметь значения TRUE, а если нет - FALSE.
Теперь выберете в закладке Member Varible итендификатор IDC_VISIBLE_CHECK и нажмем на кнопку Add Varible. Зададим название переменной - m_VisibleCheck.
Связывание событий с элементами управления
Событие – инициализация диалогового окна.
При запуске программы, основанной на диалоге, вам нужно установить определенные значения некоторых элементов управления. Вам необходимо, чтобы флажки Visible и Enable были отмечены, иначе окна редактирования не будет видно. Для этого выполните следующие действия:
Зайдите в View->ClassWizard,откройте закладку Message Maps.
В Message IDs выберете CTestDlg, в Messages появится список событий, с которыми может быть связано диалоговое окно. Выберете там событие WM_INITDIALOG. Оно происходит, когда запускается программа и инициализируется диалоговое окно.
Щелкнете на кнопку Add Function, а затем нажмите на кнопку Edit Code, для редактирования иходного кода.
Функция OnInitDialog() уже содержит часть кода написанного VC++ Найдите в нем коментарий // TODO: Add extra initialization here, который сообщает нам, что после него мы можем добавить свой код.
Добавьте необходимый программный код.
Событие – нажатие кнопки.
Чтобы связать код с событием BN_CLICKED кнопки выполните следующие действия:
Выбирете ClassWizard в меню View
Выберете закладку Message Maps в панели ClassWizard
Исползуйте диалоговую панель ClassWizard для выбора соответсвующего события:
Щелкните на кнопку Add Fucntion и в раскрывшемся окне нажмите кнопку OK.
Сейчас ваша панель MFC ClassWizard должна будет выглядеть так:
Нажмите кнопку Edit Code и напишите необходимый программный код в функции OnExitButton()
Событие – установка флажка.
Чтобы связать код с событием BN_CLICKED флажка, выполните следующие действия:
Выбирете ClassWizard в меню View
Выберете закладку Message Maps в панели ClassWizard
Исползуйте диалоговую панель ClassWizard для выбора соответствующего события
Щелкните на кнопку Add Fucntion и в раскрывшемся окне нажмите кнопку OK.
Нажмите кнопку Edit Code и напишите необходимый код в функции OnVisibleButton()
Событие – изменение строки в окне редактирования.
При вводе текста и его изменении в окне редактирования, возникает событие EN_CHANGE. Чтобы связать код с событием EN_CHANGE окна редактирования, выполните следующие действия:
Выбирете ClassWizard в меню View
Выберете закладку Message Maps в панели ClassWizard
Исползуйте диалоговую панель ClassWizard для выбора соответствующего события:
Щелкните на кнопку Add Fucntion и в раскрывшемся окне нажмите кнопку OK.
Нажмите кнопку Edit Code и напишите необходимый код в функции OnChangeTestEdit():