Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Основные элементы управления




Создание консольного приложения

Порядок создания консольного приложения:

1. Выполним команду New/Project/Win32 Console Application.

2. Введем в поле Project Name имя программы (Privet) и нажмем кнопку OK.

3. Выберем тип программы A simple application и нажмем кнопку Finish.

4. Выберем в списке объект main и откорректируем функцию:

#include "stdafx.h"

#include "stdio.h" //подключение библиотеки ввода-вывода

int main(int argc, char* argv[]) {printf("\nHello!\n"); return 0;}

5. Для выполнения программы нажмем клавишу: ^F5.

Рассмотрим пример создания диалогового приложения с различными управляющими элементами (рис. 7.2.1).

 
 

Рис. 7.2.1. Диалоговое окно с примером

 

1. Создадим папку для хранения приложения.

2. Выполнить команду New/Project/MFC AppWizard (exe).

3. Введем в поле Project Name имя программы Prim и нажмем кнопку OK.

4. На первом шаге мастера выберем вариант создания диалогового приложения (Dialog based) и нажмем кнопку Next.

5. Последовательно пройдем все остальные шаги мастера (всего четыре шага) и нажмем кнопку Finish. Сформируется заготовка окна.

6. Удалим с формы текст TODO: Place dialog control here.

7. Выполним команду Properties контекстного меню элемента Prim resources/Dialog/IDD_Prim_Dialog и в поле Language выберем Russian.

8. В окне свойств формы зададим наименование формы Пример ис­поль­зования управляющих элементов (свойство Caption), размер и наименование соответствующего шрифта установим кнопкой Font.

9. Разместим элемент Static Text (Caption =Текстовое поле).

10. Разместим элемент Text Box (IDC_EDIT1).

11. Аналогично создадим заголовок (Счетчик) и поле IDC_EDIT2.

12. Разместим элемент Spin (IDC_SPIN1) рядом с полем IDC_EDIT2 и установим свойства: Alignment=Right (выравнивание справа), Auto buddy (автоматическое подключение связанного элемента, созданного перед счет­чиком (IDC_EDIT2)), Set buddy integer (целочисленное значение счетчика), Arrow Keys (изменение значения счетчика с помощью клавиш).

Изменим название кнопки Cancel на Отмена.

13. Разместим элемент Combo Box (IDC_COMBO1) под кнопками, щелкнем по кнопке раскрытия списка и перенесем вниз нижнюю часть. На странице Data свойства этого элемента введем (для перехода на следующую строку нажимаются клавиши ^Enter) три строки со значениями 5, 15, 300. Снимем флажок сортировки (Sort) и установим выравнивание текста справа (Right aligned text).

14. Разместим элемент Radio Button (IDC_RADIO1) со свойствами: Caption =Текстовое поле, Group.

15. Аналогично разместим элемент IDC_RADIO2 с надписью Счетчик, но без флажка Group.

16. Разместим снаружи радиокнопок элемент Group Box с надписью Выбор поля для сохранения.

17. Разместим поле CheckBox с надписью Сохранять предыдущее значение.

18.

 
 

Выполним команду View/ClassWizard и раскроем страницу Mem­ber Variable (рис. 7.2.2). Выделим ресурс IDC_EDIT2, нажмем кнопку Add Variable и заполним окно с описанием переменной m_chethik (рис. 7.2.2).

Рис. 7.2.2. Страница переменных и окно добавления переменной

Аналогичным образом назначим переменные: m_c picok для IDC_COM­BO1, m_edit1 для IDC_EDIT1, m_radio1 для IDC_RADIO1, m_check1 для IDC_CHECK1.

19. На странице Message Maps выделим объект IDC_RA­DIO1, сообщение BN_CLICK и нажмем кнопку Add Member Fuction (рис. 7.2.3); оставим без изменения имя функции, нажмем кнопку OK.

 
 

Рис. 7.2.3. Страница сообщений и окно добавления функции обработки сообщения

 

20. Аналогичным образом определим функции обработки сооб­ще­ний: UDN_DELTAPOS для ресурса IDC_SPIN1, BN_CLICED для IDC_RADIO2, CBN_SELENDOK для IDC_COMBO1.

21. Вставим в тело функций OnSelendokCombo1, OnRadio1, OnRadio2 вызов функции UpdateData() для обновления значений соот­ветству­ющих переменных путем вызова и выполнения функции DoDataExchange. В конце функции OnDeltaposSpin1 включим оператор pNMUpDown->iDelta=-pNMUpDown->iDelta для установления обще­при­ня­­­­того в Office изменения счетчика: стрелка вниз - уменьшение и вверх - уве­­­личение значения счетчика, а не наоборот, как это принято в Visual С.

22. Откорректируем следующие операторы функции (конструктора класса) CprimDlg, которые присваивают начальные значения элементам:

m_chethik = _T("5"); m_cpicok = _T("10"); m_edit1 = _T("15");

23. Приведем функцию DoDataExchange к следующему виду:

void CPrimDlg::DoDataExchange(CDataExchange* pDX)

{ CDialog::DoDataExchange(pDX);

DDX_Text(pDX, IDC_EDIT2, m_chethik); // m_chethik=IDC_EDIT2

DDV_MaxChars(pDX, m_chethik, 3); //длина значения m_chethik <=3

DDX_CBString(pDX, IDC_COMBO1, m_cpicok);

DDV_MaxChars(pDX, m_cpicok, 3); //длина значения m_cpicok <=3

DDX_Text(pDX, IDC_EDIT1, m_edit1); // m_edit1=IDC_EDIT1

DDX_Radio(pDX, IDC_RADIO1, m_radio1); // m_radio1=IDC_RADIO1

DDX_Check(pDX, IDC_CHECK1, m_check1); // m_check1=IDC_CHECK1

if (m_check1)

{ switch (m_radio1) //значения переменных->в управляющие элементы

{ case 0: SetDlgItemText(IDC_EDIT1,m_cpicok); break;

case 1: SetDlgItemText(IDC_EDIT2,m_cpicok);

}

}

}

24. Сохраним проект и нажмем кнопку Execute Program для выпол­не­ния программы.




Поделиться с друзьями:


Дата добавления: 2014-12-08; Просмотров: 683; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.071 сек.