Введение в mfc
DESCRIPTION
Введение в MFC. Особенности и возможности библиотеки MFC.TRANSCRIPT
ВВЕДЕНИЕ В MFC
Mihail Croitor
Содержание
Введение в библиотеку MFC История MFC Некоторые особенности библиотеки MFC
Типы данных WinAPI Венгерская нотация
Иерархия классов MFC Архитектура приложений MFC Внешний вид приложения MFC
Введение в библиотеку MFC
MFC (Microsoft Foundation Classes) – библиотека для разработки приложений с графическим интерфейсом;
MFC – обёртка С++ над WinAPI; MFC – часть среды программирования M$ V$ MFC, кроме классов, предлагает ряд архитектур
приложений; MFC использует венгерскую нотацию для
именования переменных и классов
История MFC
Версия MFC Версия продукта Год
1.0 Microsoft C/C++ 7.0 1992
4.0 (mfc40.dll, в составе Windows 95) Visual C++ 4.0 1995
4.2 (mfc42.dll, в составе Windows 98) Visual C++ 4.2 1998
6.0 (mfc42.dll) Visual C++ 6 1998
7.0 (mfc70.dll) Visual C++ .NET 2002 2002
8.0 (mfc80.dll) Visual C++ 2005 2005
9.0 (mfc90.dll) Visual C++ 2008 2007
10.0 (mfc100.dll) Visual C++ 2010 2010
11.0 (mfc110.dll) Visual C++ 2012 2012
Первоначально MFC назывался Application Framework Extensions, в связи с чем многие функции в MFC имеют префикс Afx
Некоторые особенности MFC:Типы данных WinAPI
Тип С++ эквивалент
Тип С++ эквивалент
BOOL int TCHAR wchar_t
SHORT short LPTSTR wchar_t*
WORD unsigned short LPCTSTR const wchar_t*
DWORD unsigned long HANDLE
UINT unsigned int LPVOID void*
BYTE unsigned char LPWORD unsigned long*
CHAR char HWND
Некоторые особенности MFC: Венгерская нотация
Префикс Смысл Префикс Смысл
s строка h дескриптор
szстрока, ограниченная нулевым символом m_ переменная-член
n, iцелочисленная переменная g_ глобальная переменная
l длинное целое C класс
b булева переменная I интерфейс
t, dt время, дата и время v отсутствие типа
p указатель w слово
lpдвойной (дальний) указатель dw двойное слово
pv указатель на void lpsz
Иерархия классов MFC
CObject
CCmdTarget
CWinApp
user app
CDocument CDocTemplate CWnd
CFrameWnd CDialog CView controls
CButton CEdit CListBox
CFile CDC
CClientDC CWindowDC CPaintDC
CGdiObject
CBitmap CBrush CPen
containers
CArray simple value types
Hierarchy Chart MFC (VS2013) - link
Архитектура приложений MFC
Диалоговые приложения (Dialog Based) – для приложений, которые не должны работать с документами (Calc, Task Manager)
Однодокументные приложения (SDI – Single Document Interface) – работающие с одним документом (Paint, Notepad)
Многодокументные приложения (MDI – Multi Document Interface) – позволяющие работать сразу с несколькими документами (Visual Studio, Photoshop)
И другие …
Внешний вид приложения MFC
Title Bar
Scroll Bar
Tool Bar
Status Bar
Menu Bar
Work Space