|
|||||||
АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
Программирование заготовки приложенияСоздание программы включает в себя два этапа: 1. Визуальное проектирование 2. Написание кода Подработаем наш проект и наполним его некоторой функциональностью, а именно: 1. Уберем статический текст на панели с дежурной надписью " TODO: Place dialog controls here " 2. Уменьшим диалоговую панель 3. Изменим надписи на кнопках на русские " Выполнить " и " Отмена " 4. Разместим в центре элемент управления Static Text и под ним элемент Edit Control из панели инструментов Toolbox 5. Сделаем так, чтобы после ввода текста в поле редактирования и нажатии на кнопке " Выполнить " появлялось диалоговое окно с введенным текстом o Уберите дежурную надпись, щелкнув на ней и нажав клавишу Delete или в контекстном меню команду Delete o Уменьшите диалоговую панель, выделив ее и потянув за маркер в нижнем правом углу o Измените надписи на кнопках после их поочередного выделения и вызова панели свойств клавишей F4. В поле Caption поменяйте значения "OK" и " Cancel " на русские " Выполнить " и " Отмена " Вспомним, что во всех ресурсах приложения мы установили язык Русский. · Из панели Toolbox поместите на форму текстовое поле Edit Control и текстовую метку Static Text · Выровняйте элементы пользовательского интерфейса относительно панели и друг друга с помощью панели инструментов редактора диалоговых окон Dialog Editor. Он расположен в верхней части окна проектирования ниже системного меню и стандартной панели и имеет вид
· Щелкните на кнопке Test Dialog панели инструментов редактора диалоговых окон, чтобы получить визуальное представление пользовательской формы без компиляции всего приложения
Теперь нужно связать поле ввода, кнопку " Выполнить " и библиотечное диалоговое окно сообщений AfxMessageBox() или MessageBox() между собой так, чтобы после ввода сообщения в поле ввода и нажатии кнопки " Выполнить " появлялось бы стандартное диалоговое окно сообщений с набранным текстом. Введем вспомогательную переменную m_strText, в которой будем сохранять содержимое поля ввода и выводить его в стандартном диалоговом окне сообщений. · Выделите правой кнопкой мыши текстовое поле Edit Control на шаблоне диалогового окна и через контекстное меню выполните пункт Add Variable, чтобы запустить мастер Add Member Variable Wizard · Настройте мастер в соответствии с рисунком и щелкните на кнопке Finish
Для того, чтобы посмотреть, что сделал мастер при добавлении переменной m_strText, выполните следующее: · Вызовите окно поиска и замены комбинацией клавиш Ctrl+F или командой Edit/Find and Replace/Quick Find меню оболочки и настройте его в соответствии с рисунком
Перемещаясь по ссылкам окна Find and Replace мы видим, что мастер переменных включил описание переменной в класс CHelloDialogDlg одноименного заголовочного файла Объявление переменной в классе CHelloDialogDlgclass CHelloDialogDlg: public CDialog{....................................................public: // Содержимое текстового поля CString m_strText;};В методе этого класса, отвечающего за обмен данными между элементами управления и переменными, он внес строку связи с текстовым полем Функция обмена данными между текстовым полем и переменнойvoid CHelloDialogDlg::DoDataExchange(CDataExchange* pDX){ CDialog::DoDataExchange(pDX); DDX_Text(pDX, IDC_EDIT1, m_strText);}В конструкторе класса мастер создал код инициализации переменной пустым значением Инициализация переменной в конструкторе класса CHelloDialogDlgCHelloDialogDlg::CHelloDialogDlg(CWnd* pParent /*=NULL*/): CDialog(CHelloDialogDlg::IDD, pParent), m_strText(_T("")){ m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);}· Задайте вручную в конструкторе класса свой начальный текст для текстового поля Инициализация переменной в конструкторе класса CHelloDialogDlgCHelloDialogDlg::CHelloDialogDlg(CWnd* pParent /*=NULL*/): CDialog(CHelloDialogDlg::IDD, pParent), m_strText(_T("Элемент текстового поля")){ m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);}Теперь свяжем событие нажатия кнопки " Выполнить " с функцией обработки этого события, в которой передадим содержимое поля ввода, сохраненное системой в промежуточной переменной, диалоговому окну сообщений. Поиск по сайту: |
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.003 сек.) |