SlideShare a Scribd company logo
1 of 9
INTRODUCERE ÎN MFC
Mihail Croitor
Cuprins
 Introducere în biblioteca MFC
 Istoricul MFC
 Unele particularități ale bibliotecii MFC
 Tipuri de date WinAPI
 Notația ungară
 Ierarhia claselor MFC
 Arhitectura aplicațiilor MFC
 Reprezentarea aplicațiilor MFC
Introducere în biblioteca MFC
 MFC (Microsoft Foundation Classes) – biblioteca
pentra elaborarea aplicațiilor cu interfața grafică de
utilizator;
 MFC – un înveliș С++ asupra WinAPI (în C);
 MFC – o parte a mediului de programare M$ V$
 MFC, în afară de clase, propune un set de
arhitecturi ale aplicațiilor;
 MFC utilizează notația unghară pentru denumirea
variabilelor și claselor
Istoricul MFC
Versiunea MFC Versiunea mediului Anul
1.0 Microsoft C/C++ 7.0 1992
4.0 (mfc40.dll, în cadrul Windows 95) Visual C++ 4.0 1995
4.2 (mfc42.dll, în cadrul 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
Inițial MFC se numea Application Framework Extensions, din această cauză multe
funcții în MFC au prefixul Afx
Unele particularități ale MFC:
Tipuri de date WinAPI
Tip Echivalent С++ Tip Echivalent С++
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
Unele particularități MFC:
Notația ungară
Prefix Sens Prefix Sens
s Șir de caractere h descriptor
sz
Șir de caractere
строка, cu simbol nul
m_ variabila-membru
n, i Variabila de tip întreg g_ Variabila globală
l Întreg lung C Clasă
b Variabila de tip boolean I Interfață
t, dt Timp, data și timp v Tip vid
p pointer w Cuvânt (word)
lp Pointer dublu dw Cuvânt dublu
pv
Pointer la variabila de tip
void
lpsz
Ierarhia claselor 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
Arhitectura aplicațiilor MFC
 Aplicații de tip dialog (Dialog Based) – aplicații, care
nu lucrează cu documente (Calc, Task Manager)
 Aplicații cu un document (SDI – Single Document
Interface) – aplicații care lucrează cu cel mult un
document la un moment dat (Paint, Notepad)
 Aplicații cu mai multe documente (MDI – Multi
Document Interface) – aplicații, care permit lucru cu
mai multe documente concomitent (Visual Studio,
Photoshop)
 Altele…
Reprezentarea aplicațiilor MFC
Title Bar
Scroll Bar
Tool Bar
Status Bar
Menu Bar
Work Space

More Related Content

Viewers also liked

стандартная библиотека с++: введение
стандартная библиотека с++: введениестандартная библиотека с++: введение
стандартная библиотека с++: введениеmcroitor
 
особенности программирования на с++
особенности программирования на с++особенности программирования на с++
особенности программирования на с++mcroitor
 
библиотеки программирования
библиотеки программированиябиблиотеки программирования
библиотеки программированияmcroitor
 
C++ и базы данных
C++ и базы данныхC++ и базы данных
C++ и базы данныхmcroitor
 
MFC 개발설정
MFC 개발설정MFC 개발설정
MFC 개발설정종훈 박
 
MFC 발견 (2)
MFC 발견 (2)MFC 발견 (2)
MFC 발견 (2)종훈 박
 
MFC 발견 (1)
MFC 발견 (1)MFC 발견 (1)
MFC 발견 (1)종훈 박
 

Viewers also liked (7)

стандартная библиотека с++: введение
стандартная библиотека с++: введениестандартная библиотека с++: введение
стандартная библиотека с++: введение
 
особенности программирования на с++
особенности программирования на с++особенности программирования на с++
особенности программирования на с++
 
библиотеки программирования
библиотеки программированиябиблиотеки программирования
библиотеки программирования
 
C++ и базы данных
C++ и базы данныхC++ и базы данных
C++ и базы данных
 
MFC 개발설정
MFC 개발설정MFC 개발설정
MFC 개발설정
 
MFC 발견 (2)
MFC 발견 (2)MFC 발견 (2)
MFC 발견 (2)
 
MFC 발견 (1)
MFC 발견 (1)MFC 발견 (1)
MFC 발견 (1)
 

More from mcroitor

09 server mgmt_ii_ro
09 server mgmt_ii_ro09 server mgmt_ii_ro
09 server mgmt_ii_romcroitor
 
09 server mgmt_ii_ru
09 server mgmt_ii_ru09 server mgmt_ii_ru
09 server mgmt_ii_rumcroitor
 
10 server security_ro
10 server security_ro10 server security_ro
10 server security_romcroitor
 
10 server security_ru
10 server security_ru10 server security_ru
10 server security_rumcroitor
 
08 server mgmt_ro
08 server mgmt_ro08 server mgmt_ro
08 server mgmt_romcroitor
 
08 server mgmt_ru
08 server mgmt_ru08 server mgmt_ru
08 server mgmt_rumcroitor
 
07 virtual hosts_ru
07 virtual hosts_ru07 virtual hosts_ru
07 virtual hosts_rumcroitor
 
07 virtual hosts_ro
07 virtual hosts_ro07 virtual hosts_ro
07 virtual hosts_romcroitor
 
06 php instalation_ro
06 php instalation_ro06 php instalation_ro
06 php instalation_romcroitor
 
06 php instalation_ru
06 php instalation_ru06 php instalation_ru
06 php instalation_rumcroitor
 
05 db server_deployment_ro
05 db server_deployment_ro05 db server_deployment_ro
05 db server_deployment_romcroitor
 
05 db server_deployment_ru
05 db server_deployment_ru05 db server_deployment_ru
05 db server_deployment_rumcroitor
 
04 web server_deployment_ro
04 web server_deployment_ro04 web server_deployment_ro
04 web server_deployment_romcroitor
 
04 web server_deployment_ru
04 web server_deployment_ru04 web server_deployment_ru
04 web server_deployment_rumcroitor
 
03 web server_architecture_ro
03 web server_architecture_ro03 web server_architecture_ro
03 web server_architecture_romcroitor
 
03 web server_architecture_ru
03 web server_architecture_ru03 web server_architecture_ru
03 web server_architecture_rumcroitor
 
02 server hardware_ro
02 server hardware_ro02 server hardware_ro
02 server hardware_romcroitor
 
02 server hardware_ru
02 server hardware_ru02 server hardware_ru
02 server hardware_rumcroitor
 
01 server definition_ro
01 server definition_ro01 server definition_ro
01 server definition_romcroitor
 
01 server definition
01 server definition01 server definition
01 server definitionmcroitor
 

More from mcroitor (20)

09 server mgmt_ii_ro
09 server mgmt_ii_ro09 server mgmt_ii_ro
09 server mgmt_ii_ro
 
09 server mgmt_ii_ru
09 server mgmt_ii_ru09 server mgmt_ii_ru
09 server mgmt_ii_ru
 
10 server security_ro
10 server security_ro10 server security_ro
10 server security_ro
 
10 server security_ru
10 server security_ru10 server security_ru
10 server security_ru
 
08 server mgmt_ro
08 server mgmt_ro08 server mgmt_ro
08 server mgmt_ro
 
08 server mgmt_ru
08 server mgmt_ru08 server mgmt_ru
08 server mgmt_ru
 
07 virtual hosts_ru
07 virtual hosts_ru07 virtual hosts_ru
07 virtual hosts_ru
 
07 virtual hosts_ro
07 virtual hosts_ro07 virtual hosts_ro
07 virtual hosts_ro
 
06 php instalation_ro
06 php instalation_ro06 php instalation_ro
06 php instalation_ro
 
06 php instalation_ru
06 php instalation_ru06 php instalation_ru
06 php instalation_ru
 
05 db server_deployment_ro
05 db server_deployment_ro05 db server_deployment_ro
05 db server_deployment_ro
 
05 db server_deployment_ru
05 db server_deployment_ru05 db server_deployment_ru
05 db server_deployment_ru
 
04 web server_deployment_ro
04 web server_deployment_ro04 web server_deployment_ro
04 web server_deployment_ro
 
04 web server_deployment_ru
04 web server_deployment_ru04 web server_deployment_ru
04 web server_deployment_ru
 
03 web server_architecture_ro
03 web server_architecture_ro03 web server_architecture_ro
03 web server_architecture_ro
 
03 web server_architecture_ru
03 web server_architecture_ru03 web server_architecture_ru
03 web server_architecture_ru
 
02 server hardware_ro
02 server hardware_ro02 server hardware_ro
02 server hardware_ro
 
02 server hardware_ru
02 server hardware_ru02 server hardware_ru
02 server hardware_ru
 
01 server definition_ro
01 server definition_ro01 server definition_ro
01 server definition_ro
 
01 server definition
01 server definition01 server definition
01 server definition
 

Recently uploaded

Catalogul firmei de exercițiu Ancolex 2024.pptx
Catalogul firmei de exercițiu Ancolex 2024.pptxCatalogul firmei de exercițiu Ancolex 2024.pptx
Catalogul firmei de exercițiu Ancolex 2024.pptxCori Rus
 
Igiena sistemului digestiv , biologi clasa 11-a
Igiena sistemului digestiv , biologi clasa 11-aIgiena sistemului digestiv , biologi clasa 11-a
Igiena sistemului digestiv , biologi clasa 11-aCMB
 
Sistemul excretor la om, biologie clasa 11
Sistemul excretor la om, biologie clasa 11Sistemul excretor la om, biologie clasa 11
Sistemul excretor la om, biologie clasa 11CMB
 
Strategii-pentru-educatia-remedială-ppt.pptx
Strategii-pentru-educatia-remedială-ppt.pptxStrategii-pentru-educatia-remedială-ppt.pptx
Strategii-pentru-educatia-remedială-ppt.pptxMoroianuCristina1
 
Agricultura- lectie predare -invatare geografie cls 10
Agricultura- lectie predare -invatare geografie cls 10Agricultura- lectie predare -invatare geografie cls 10
Agricultura- lectie predare -invatare geografie cls 10CrciunAndreeaMaria
 
ziua pamantului ziua pamantului ziua pamantului
ziua pamantului ziua pamantului ziua pamantuluiziua pamantului ziua pamantului ziua pamantului
ziua pamantului ziua pamantului ziua pamantuluiAndr808555
 

Recently uploaded (6)

Catalogul firmei de exercițiu Ancolex 2024.pptx
Catalogul firmei de exercițiu Ancolex 2024.pptxCatalogul firmei de exercițiu Ancolex 2024.pptx
Catalogul firmei de exercițiu Ancolex 2024.pptx
 
Igiena sistemului digestiv , biologi clasa 11-a
Igiena sistemului digestiv , biologi clasa 11-aIgiena sistemului digestiv , biologi clasa 11-a
Igiena sistemului digestiv , biologi clasa 11-a
 
Sistemul excretor la om, biologie clasa 11
Sistemul excretor la om, biologie clasa 11Sistemul excretor la om, biologie clasa 11
Sistemul excretor la om, biologie clasa 11
 
Strategii-pentru-educatia-remedială-ppt.pptx
Strategii-pentru-educatia-remedială-ppt.pptxStrategii-pentru-educatia-remedială-ppt.pptx
Strategii-pentru-educatia-remedială-ppt.pptx
 
Agricultura- lectie predare -invatare geografie cls 10
Agricultura- lectie predare -invatare geografie cls 10Agricultura- lectie predare -invatare geografie cls 10
Agricultura- lectie predare -invatare geografie cls 10
 
ziua pamantului ziua pamantului ziua pamantului
ziua pamantului ziua pamantului ziua pamantuluiziua pamantului ziua pamantului ziua pamantului
ziua pamantului ziua pamantului ziua pamantului
 

mfc introducere

  • 2. Cuprins  Introducere în biblioteca MFC  Istoricul MFC  Unele particularități ale bibliotecii MFC  Tipuri de date WinAPI  Notația ungară  Ierarhia claselor MFC  Arhitectura aplicațiilor MFC  Reprezentarea aplicațiilor MFC
  • 3. Introducere în biblioteca MFC  MFC (Microsoft Foundation Classes) – biblioteca pentra elaborarea aplicațiilor cu interfața grafică de utilizator;  MFC – un înveliș С++ asupra WinAPI (în C);  MFC – o parte a mediului de programare M$ V$  MFC, în afară de clase, propune un set de arhitecturi ale aplicațiilor;  MFC utilizează notația unghară pentru denumirea variabilelor și claselor
  • 4. Istoricul MFC Versiunea MFC Versiunea mediului Anul 1.0 Microsoft C/C++ 7.0 1992 4.0 (mfc40.dll, în cadrul Windows 95) Visual C++ 4.0 1995 4.2 (mfc42.dll, în cadrul 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 Inițial MFC se numea Application Framework Extensions, din această cauză multe funcții în MFC au prefixul Afx
  • 5. Unele particularități ale MFC: Tipuri de date WinAPI Tip Echivalent С++ Tip Echivalent С++ 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
  • 6. Unele particularități MFC: Notația ungară Prefix Sens Prefix Sens s Șir de caractere h descriptor sz Șir de caractere строка, cu simbol nul m_ variabila-membru n, i Variabila de tip întreg g_ Variabila globală l Întreg lung C Clasă b Variabila de tip boolean I Interfață t, dt Timp, data și timp v Tip vid p pointer w Cuvânt (word) lp Pointer dublu dw Cuvânt dublu pv Pointer la variabila de tip void lpsz
  • 7. Ierarhia claselor 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
  • 8. Arhitectura aplicațiilor MFC  Aplicații de tip dialog (Dialog Based) – aplicații, care nu lucrează cu documente (Calc, Task Manager)  Aplicații cu un document (SDI – Single Document Interface) – aplicații care lucrează cu cel mult un document la un moment dat (Paint, Notepad)  Aplicații cu mai multe documente (MDI – Multi Document Interface) – aplicații, care permit lucru cu mai multe documente concomitent (Visual Studio, Photoshop)  Altele…
  • 9. Reprezentarea aplicațiilor MFC Title Bar Scroll Bar Tool Bar Status Bar Menu Bar Work Space