Студопедия КАТЕГОРИИ: АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
Исследуем объект главного окна
Объект главного окна отвечает за всю работу окна программы, за исключением клиентской области. Это означает, что объект главного окна отвечает за заголовок, строку меню, панель инструментов и строку состояния в нижней части окна. Заголовок и строка меню создаются автоматически при создании окна, а панель инструментов и строка со стояния добавляются в методе OnCreate(). Перейдем к объекту вида — он отвечает за отображение данных из документа в клиентской области окна программы. Большая часть наших действий связана именно с объектом вида. Исследуем объект вида В объекте вида выводится наше сообщение «Добро пожаловать в Visual C++!». Это происходит в методе OnDraw() файла welcomeView.cpp: void CWelcomeView::OnDraw(CDC* pDC) { CString welcome_string = "Добро пожаловать в Visual C++"; CWelcomeDoc* pDoc = GetDocument(); ASSERT_VALID(pDoc); pDC->TextOut(0, 0, welcome_string); } Этот метод вызывается в ситуации, когда требуется перерисовать клиентскую область. На самом деле именно так станут работать все наши программы — они будут разбиты на множество различных методов, предназначенных для обработки конкретных сообщений Windows. Программирование, управляемое событиями Программы для Windows управляются событиями (event-driven). Это означает, что они реагируют на действия пользователя, называемые событиями — щелчки Кнопкой мыши, нажатия клавиш и т. д. При наступлении любого из этих событий в программе вызывается соответствующий метод. Тем самым удается разбить ее на небольшие методы, соответствующие различным сообщениям Windows. Например, метод OnDraw() вызывается при необходимости перерисовать клиентскую область — когда окно впервые отображается на экране, когда пользователь перемещает окно, закрывавшее часть нашего окна, или же сворачивает и разворачивает текущее окно. Вывод сообщения в объекте вида Что же происходит в методе OnDraw() при выводе текста? Прежде всего, мы создадим новый объект welcome_string, принадлежащий классу MFC CString, и заносим в него текст: void CWelcomeView::OnDraw(CDC* pDC) { CString welcome_string = "Добро пожаловать в Visual C++"; CWelcomeDoc* pDoc = GetDocument(); ASSERT_VALID(pDoc); pDC->TextOut(0, 0, welcome_string); } Класс CString содержит все операции со строками. Он чрезвычайно полезен и является заметным достижением по сравнению с принятой в языке С интерпретацией строк как символьных массивов. Класс CString содержит следующие методы:
Затем в методе OnDraw() мы выводим текстовую строку через переданный методу указатель pDC, который ссылается на объект класса MFC с именем CDC. Конкретно, мы вызываем метод TextOut() этого объекта Класс CDC чрезвычайно важен для нас, поскольку он предназначен для работы с контекстами устройств.Весь графический и текстовый вывод, выполняемый нами в Visual C++, будет осуществляться через контексты устройств. |
|||||||||||||||||||||||||||||||||||||||||||||||
Последнее изменение этой страницы: 2018-04-12; просмотров: 425. stydopedya.ru не претендует на авторское право материалов, которые вылажены, но предоставляет бесплатный доступ к ним. В случае нарушения авторского права или персональных данных напишите сюда... |