La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Programmation Windows Initiation à l’utilisation de Visual C++ Franck Rubi LaBRI Décembre 2000.

Présentations similaires


Présentation au sujet: "Programmation Windows Initiation à l’utilisation de Visual C++ Franck Rubi LaBRI Décembre 2000."— Transcription de la présentation:

1 Programmation Windows Initiation à l’utilisation de Visual C++ Franck Rubi LaBRI rubi@labri.fr Décembre 2000

2 Franck Rubi, LaBRI2 Première Partie zQuelques rappels de C++ zDécouverte de l’environnement VC++ zDévelopper sous VC++ zGestion de l’interface utilisateur zMFC et Structures de données zSérialisation zExercice: Un mini « paint »

3 Décembre 2000Franck Rubi, LaBRI3 Quelques rappels de C++ zProgrammation Objet Classes, champs, méthodes, encapsulation zGénéricité Patron de classe « template » zHéritage et Polymorphisme Héritage simple ou multiple, fonctions « virtual » zExceptions Définitions, génération « throw », capture « try, catch »

4 Décembre 2000Franck Rubi, LaBRI4 Découverte de l’environnement VC++ zModèle classique programmes, bibliothèques, ressources, aides, makefile Plusieurs types d ’applications: yWIN32 Application en mode console API WIN32, fenêtre DOS yWin32 Application API WIN32, fenêtre Windows yProgrammation à l ’aide de la bibliothèque de classes zModèle à base de composants, internet

5 Décembre 2000Franck Rubi, LaBRI5 Découverte de l ’environnement VC++ zNotion de projet 1 projet = 1 dossier xsources (h,cpp), makefile (dsp,dsw), xressources(rc, ico, rc2) xAides (hpj, bmp, rtf) xreadme.txt xdossiers DEBUG, RELEASE x… Avec dossier debug : plus de 7Mo

6 Décembre 2000Franck Rubi, LaBRI6 Découverte de l ’environnement VC++ L ’environnement de programmation contient: zUn éditeur de texte avec fenêtre « Workspace » zCompilateur, éditeur de liens zUn outil de debug symbolique puissant zUn éditeur de ressources zDes assistants: yde création de projet (APP WIZARD) yde création de classes, de gestion d’événements,... zUne aide en ligne importante zDifférents outils liés (install shield, visual source safe, …)

7 Décembre 2000Franck Rubi, LaBRI7 Environnement VC++

8 Décembre 2000Franck Rubi, LaBRI8 Assistant de création d’application: Découverte de l ’environnement VC++

9 Décembre 2000Franck Rubi, LaBRI9 Développer sous VC++ 1. Création d ’une application console (fenêtre DOS) // appliconsole.cpp : Defines the entry point for the console application. #include "stdafx.h" int main(int argc, char* argv[]) { printf("Hello World!\n"); return 0; }

10 Décembre 2000Franck Rubi, LaBRI10 Développer sous VC++

11 Décembre 2000Franck Rubi, LaBRI11 Développer sous VC++ 2. Création d’une application s’exécutant dans une fenêtre Windows Un extrait: BOOL InitInstance(HINSTANCE hInstance, int nCmdShow) { HWND hWnd; hInst = hInstance; // Store instance handle in our global variable hWnd = CreateWindow(szWindowClass, szTitle, WS_OVERLAPPEDWINDOW, CW_USEDEFAULT, 0, CW_USEDEFAULT, 0, NULL, NULL, hInstance, NULL); if (!hWnd) {return FALSE;} ShowWindow(hWnd, nCmdShow); UpdateWindow(hWnd); return TRUE; }

12 Décembre 2000Franck Rubi, LaBRI12 Développer sous VC++

13 Décembre 2000Franck Rubi, LaBRI13 Développer sous VC++ 3. Une application utilisant la MFC yBibliothèque de classes de VC++ 6.0 Microsoft Foundation Classes yArchitecture document - vue Fichier Objet « Document » Sérialisation Objet « Vue » Affichage Utilisateur

14 Décembre 2000Franck Rubi, LaBRI14 Développer sous VC++ zUne application MFC - VC++ est: y« Simple document » type bloc-notes y« Multiple document » par exemple Word Disposent d ’une fenêtre principale avec barre de menu classique et barre de boutons. yde type « Dialog », sans manipulation de fichier s ’affiche sous forme d ’une boite de dialogue avec bouton de fermeture.

15 Décembre 2000Franck Rubi, LaBRI15 Développer sous VC++ 3. Création d’une application MFC en utilisant l ’assistant de création d’application 6 classes créées: CAboutDLG: Boite de dialogue Auteur - Version C…App: La classe principale qui hérite de CWinApp C…Doc: La classe document (Cdocument) C…View: La classe Vue (Cview ou CScrollView) CMainFrame: La fenêtre principale (CMDIFrameWnd) CChildFrame: les fenêtres filles (CMDIChildWnd)

16 Décembre 2000Franck Rubi, LaBRI16 Développer sous VC++

17 Décembre 2000Franck Rubi, LaBRI17 Gestion de l’interface utilisateur zGestion événements souris et Dessins yWM_RBUTTONDOWN, WM_LBUTTONDOWN, WM_MOUSEMOVE, … yaffichage d ’une boite simple AfxMessageBox(…) yContexte d ’affichage (texte et dessin) Classes CDC et CClientDC fonctions CDC::TextOut, CDC::MoveTo, CDC::LineTo yEpaisseur et couleur (CPen, COLORREF) zBoites de Dialogue yUtilisation de boites prédéfinies (CColorDialog) yCréation d ’une boite à l ’aide de l’éditeur de ressources zMenu et Barre d’outils

18 Décembre 2000Franck Rubi, LaBRI18 MFC et structures de données zDes classes génériques pour les structures de données: yTableaux dynamiques: CArray méthodes: GetSize, SetSize, Add, operator[],... yListes: CList et variantes méthodes: AddHead, AddTail, IsEmpty GetHeadPosition, GetNext, RemoveHead,... yTable de Hashage: Cmap méthodes: SetAt( ARG_KEY key, ARG_VALUE newValue ) InitHashTable( UINT hashSize ),...

19 Décembre 2000Franck Rubi, LaBRI19 Sérialisation zPermet sauvegarde et restauration de manière simple // CAppliMFCDoc serialization void CAppliMFCDoc::Serialize(CArchive& ar) { if (ar.IsStoring()) { // TODO: add storing code here } else { // TODO: add loading code here }

20 Exercice un mini « paint »


Télécharger ppt "Programmation Windows Initiation à l’utilisation de Visual C++ Franck Rubi LaBRI Décembre 2000."

Présentations similaires


Annonces Google