le grand livre de microsoft visual c++tm 1.5 resume table des matieres

Transcription

le grand livre de microsoft visual c++tm 1.5 resume table des matieres
LE GRAND LIVRE DE MICROSOFT
VISUAL C++TM 1.5
ALAIN LEBATARD
RESUME
le grand Livre de Visual C++ 1.5 est sans conteste l'ouvrage de référence du
nouvel outil de programmation de Microsoft ®, Longtemps réservé à une élite, le
développement d'applications Windows~ se démocratise avec ce produit
souple et puissant. Que vous soyez débutant en programmation, développeur
professionnel ou programmeur averti, ce livre s'adresse à vous. Apprenez tour à
tour à manier l'environnement intégré (édition de documents, gestion des
différents types de données, débogage de l'application...), à connaÎtre les
ficelles du C++ (programmation orientée objets, structure de données,
définition des variables, encapsulation et héritage, polymorphisme,
préprocesseur...) et à réaliser des applications basées sur l'architecture
Microsoft ® Foundation Classes (fenêtrage, gestion des entrées clavier et
souris, écriture et manipulation des fontes de caractères, dessin avec les outils
du GDI, gestion des images bitmap, gestion de la mémoire et des fichiers,
bOÎtes de dialogue, contrôles Windows TM, échanges de données via le Pressepapiers ou OLE, librairies dynamiques...)
PARMI lES SUJETS TRAITES
Ø Gestion des projets : création, construction et exécution d'un projet, projets externes...
Ø Types de cible et options de construction: programmes exécutables pour Windows", librairies dynamiques, custom controls,
P-Code...
Ø Mise au point de l'application : exécution pas à pas, points d'arrêt, mode mixte Source/Assembleur, débogueur...
Ø Préprocesseur: identification ponctuateurs, opérateurs, constantes...
Ø Type et variables, expressions, fonctions
Ø Classes, objets, héritage, fonctions virtuelles, surcharge
Ø Utilisation des MFC
Ø Gestion des événements, menus et accélérateurs
Ø Fenêtres filles et secondaires
Ø Ecrire et dessiner avec le GDI
Ø Divers types de contrôle: bouton, liste, ascenseur...
Ø Actions de la souris et du clavier, boîtes de dialogue, bitmaps
Ø Gestion de la mémoire et des fichiers: segmentation, allocation dynamique de la mémoire...
Ø Documents et vues: classes Codocument, Cview et Cdoc Template, applications MDI…
Ø Les librairies dynamiques: spécificités, création…
Ø Transferts et copies de données via le Presse-papier
Ø Polices de caractères, palettes de couleurs .
Ø Réalisation de clients de serveurs OLE
Ø Intégration de Custom Controls de Visual Basic"
Ø Economiseurs d'écran, applications du Panneau de configuration
Ø Gestionnaire de classes MFC ClassWizard
TABLE DES MATIERES
Partie 1 :
1.
Présentation de Visual C++
19
Le plan de travail et les documents
21
1.1.
1.2.
Introduction
Documents de type fichier
21
26
1.3.
Documents de type sortie (Output Window)
27
1.4.
1.5.
1.6.
1.7.
1.8.
Documents de type visualisation des données (Watch Window)
Documents de type registres du microprocesseur (Register Window)
Le document de type visualisation des variables locales (Locals Window)
Documents de type navigation (Browse Window)
Corrélation entre vues et documents
27
28
29
30
31
1.8.
2.
35
2.1.
2.2.
2.3.
2.4.
35
36
40
41
42
43
43
44
46
48
49
50
53
54
54
56
Introduction
Créer, ouvrir et sauvegarder des fichiers
Préparer l'édition: le paramétrage
Editer du texte
2.4.1. Saisir du texte
2.4.2. Se déplacer dans le texte
2.4.3. Modifier du texte
2.4.4. Rechercher du texte
2.4.5. Rechercher du texte avec remplacement
2.4.6. Utiliser les signets
2.4.7. Se positionner directement sur une ligne de texte
2.4.8. Couper, copier et coller du texte
2.4.9. Annuler et refaire les actions d'édition
2.4.10. Appariement des parenthèses, des accolades et des crochets
Se déplacer entre les fenêtres
Résumé des commandes de l'éditeur de texte
Gérer vos projets
59
3.1.
3.2.
3.3.
59
60
64
64
65
66
68
69
71
72
73
74
75
77
77
78
79
80
80
81
82
83
83
85
86
89
90
91
93
3.4.
3.5.
3.6.
3.7.
3.8.
3.9.
3.10.
3.11.
4.
31
Gérer vos fichiers
2.5.
2.6.
3.
Corrélation entre vues et documents
Présentation
Création d'un projet
Construction du projet
3.3.1. Qu'est-ce que la compilation?
3.3.2. Qu'est-ce que l'édition des liens?
3.3.3. Principe de communication avec les outils de construction
3.3.4. L'environnement utilisé par les outils lors de la construction.
Construire sous Visual C++
Exécuter votre projet
Erreurs de construction
3.6.1. Format des erreurs
3.6.2. Localiser les erreurs
Modification des caractéristiques d'un projet
Espace de travail associé au projet
3.8.1. La notion d'espace de travail
3.8.2. L'espace de travail est lié au projet
3.8.3. Espace de travail sans projet
Projet externe
3.9.1. Avantages et inconvénients des projets externes
3.9.2. Options du projet externe
3.9.3. Comment ouvrir un projet externe
La génération automatique des dépendances
3.10.1. Principe
3.10.2. Régénération manuelle des dépendances
Constitution du fichier MAK
3.11.1. Les variables
3.11.2. Les blocs de description
3.11.3. Comment lire un fichier projet
3.11.4. Evaluation conditionnelle
Les types de cible et les options de construction
4.1. Programme exécutable pour Windows
4.1.1. Structure d'un programme exécutable; la segmentation
4.1.2. La pile
4.1.3. La configuration de l'application en mémoire: le fichier de définition
4.1.4. En-tête d'un fichier exécutable
4.1.5. Les ressources
4.1.5.1. Qu'est-ce qu'une ressource?
4.1.5.2. La compilation des ressources
4.1.5.3. Les types de ressources
4.2.
4.3.
4.4.
4.5.
4.6.
4.1.5.4. La syntaxe du fichier de description des ressources
Librairie dynamique pour Windows
4.2.1. Demande de chargement implicite de librairie dynamique
4.2.2. Demande de chargement explicite de librairie dynamique
4.2.3. Les librairies dynamiques et la pile
Contrôles personnalisés (Custom contrôles) pour Windows
Application QuickWin
Librairie statique
Programme exécutable avec P-Code pour Windows
4.6.1. Principe du P-Code
4.6.2. Fonctionnement du P-Code
95
95
96
96
98
102
104
104
105
106
107
116
117
118
119
119
120
121
122
122
123
4.7.
4.8.
4.9.
5.
157
5.1.
5.2.
5.3.
5.4.
157
160
162
167
167
172
174
174
176
177
179
181
5.6.
5.7.
7.
8.
123
124
125
125
127
129
130
131
132
136
138
140
141
143
144
145
146
146
147
148
150
150
152
154
Mettre au point votre application
5.5.
6.
4.6.2. Fonctionnement du P-Code
Autres cibles
Les options de construction
4.8.1. Présentation
4.8.2. Les options de génération de code
4.8.3. Les options de personnalisation
4.8.4. Les options de personnalisation spécifiques au langage C++
4.8.5. Options de débogage
4.8.6. Fichiers de sortie
4.8.7. Options de modèle de mémoire
4.8.8. Options d'optimisation du code généré
4.8.9. Options de génération du P-Code
4.8.10. Options de précompilation des fichiers inclus
4.8.11. Options du pré-processeur
4.8.12. Options de segmentation
4.8.13. Options sur les prologues et épilogues des fonctions
Les options d'édition des liens
4.9.1. Présentation
4.9.2. Les options d'entrée
4.9.3. Les options d'image mémoire
4.9.4. Les options diverses.
4.9.5. Les options de sortie
4.9.6. Spécification des librairies dynamiques Windows
4.10.
Les options du compilateur de ressources
Introduction
Exécution pas à pas
Les points d'arrêt
Inspecter la valeur des variables
5.4.1. Document de visualisation des données ('Watch')
5.4.2. Boîte de dialogue 'QuickWatch'
Visualiser les registres et le contexte local
5.5.1. Document de visualisation des registres du microprocesseur
5.5.2. Document de visualisation des variables locales
5.5.3. Visualisation des appels de fonctions
Le mode mixte Source*Assembleur
Les autres commandes et spécificités du débogueur de Visual C++
Naviguer dans les symboles de votre application
185
6.1.
6.2.
6.3.
185
186
188
188
189
191
192
193
194
194
Que permet le document de type navigation?
base de données de navigation
Interroger la base de données de navigation
6.3.1. Charger une base de données de navigation
6.3.2. Définitions et références d'un symbole
6.3.3. Graphe des appels de fonctions (Cali Graph)
6.3.4. Graphe des fonctions appelantes (Caller Graph)
6.3.5. Graphe des classes dérivées (Derived Class Graph)
6.3.6. Graphe des classes de base (Base Class Graph)
6.3.7. Les commandes du menu Browse
Configurer Visual C++
197
7.1
7.2.
7.3.
Configuration des options du projet, option Project
Configuration du débogage, option Debug
Configuration des répertoires, option Directories
197
198
198
7.4.
7.5.
7.6.
7.7.
7.8.
Configuration de l'éditeur de texte, option Editor
Configuration de l'espace de travail, option Workspace
Configuration des outils externes, option Tools
Configuration des couleurs des documents
Configuration des fontes de caractères
199
200
200
202
205
l'aide en ligne
207
8.1.
8.2.
8.3.
8.4.
8.5.
8.6.
8.7.
8.8.
207
209
209
209
210
210
210
210
Présentation de la fenêtre d'aide
Aide sur l'environnement de travail
Aide sur les outils de construction
Aide sur le langage C++
Aide sur la librairie de classes MFC
Aide sur l'A.P.I. Windows
Aide sur le support technique
Recherche sur un mot-clé
8.8.
8.9.
Partie 2 :
9.
10.
12.
13.
Introduction au C++
213
215
9.1.
9.2.
9.3.
9.4.
9.5.
9.6.
9.7.
9.8.
9.9.
9.10.
215
215
217
218
220
221
222
222
224
229
Introduction
Entité lexicale
Les phases de translation
Les commentaires
Les identificateurs
Les mots réservés
Les ponctuateurs
Les opérateurs
Constantes
Les directives de preprocessing
Types et variables
243
10.1.
243
243
245
246
246
248
249
Les types prédéfinis du langage C++
10.1.1. Les types entiers
10.1.2. Les types flottants
10.1.3. Limites des types entiers et flottants
Utiliser vos propres types
Les conversions de type
Les variables du programme
Les expressions
255
11.1.
11.2.
11.3.
258
266
275
Opérateurs Unaires
les expressions binaires
l'expression ternaire
Les fonctions
277
12.1.
12.2.
12.3.
12.4.
12.5.
277
278
286
288
288
Présentation
les arguments d'une fonction
Valeur de retour des fonctions
Fonction récursive
Fonction en ligne
Contrôle de l'exécution du programme
291
13.1.
13.2.
Instructions
Instructions d'itération
13.2.1. Instruction while
13.2.2. Instruction do
13.2.3. Instruction for
Instructions de décision
13.3.1. Instruction if
13.3.2. L'instruction switch
les instructions de saut
291
292
292
293
294
296
296
298
300
13.4.1. Instruction break
13.4.2. L'instruction continue
13.4.3. L'instruction goto
300
301
302
13.3.
13.4.
14.
210
211
le préprocesseur
10.2.
10.3.
10.4.
11.
Recherche sur un mot-clé
Aide contextuelle depuis un document d'édition
Classes et objets
303
14.1.
14.2.
14.3.
14.4.
14.5.
14.6.
14.7.
14.8.
14.9.
14.10.
14.11.
14.12.
14.13.
14.14.
14.15.
303
304
304
307
309
310
312
315
318
321
324
327
328
331
337
Qu'est-ce qu'une classe?
Définir une classe
Variables membres d'une classe
Fonctions membre d'une classe
Niveaux d'accès aux membres d'une classe
Objets
Membre statique d'une classe
Constructeur et destructeur d'un objet
Le pointeur implicite this
Exemple de classe: la classe string
Héritage
Les niveaux d'accès dans l'héritage
Les constructeurs et l'héritage
Fonctions Virtuelles
Surcharge des opérateurs
14.15. Surcharge des
14.15.1.
14.15.2.
14.15.3.
Partie 3 :
15.
16.
15.1.
15.2.
347
349
349
351
352
355
356
358
Structure de notre application minimale, avec le SDK
Structure de notre application minimale, avec la librairie MFC
15.2.1. Fichiers sources de l'application
15.2.2. Les deux classes de notre application
15.2.3. L'application APP01 expliquée
15.2.4. Donner une icône à notre application
15.2.5. Les fichiers MFC inclus
15.2.6. Les librairies MFC
Gestion des événements: la table de messages
361
16.1.
361
362
363
366
366
368
La table de messages
16.1.1. Déclaration d'une table de messages
16.1.2. Définition d'une table de messages
APP02 : Application minimale possédant une table de messages
16.2.1. Sources de l'application APP02
16.2.2. L'application APP02 en quelques points essentiels
Les menus et les accélérateurs
371
17.1.
17.2.
17.3.
17.4.
371
372
376
377
377
383
388
388
390
392
398
400
400
401
403
404
409
17.6.
Présentation
Créer un menu
Réception des commandes par l'application
APP03: Application minimale avec menus
17.4.1. Sources de l'application APP03
17.4.2. L'application APP03 en quelques points essentiels
APP04: Application minimale avec menus gérés dynamiquement
17.5.1. La classe Cmenu
17.5.2. Les gestionnaires de mise à jour de commandes
17.5.3. Sources de l'application APP04
17.5.4. L'application APP04 en quelques points essentiels
APP05 : Gestion du menu système et des accélérateurs
17.6.1. Modifier un menu système
17.6.2. Gérer un menu système
17.6.3. Donner des accélérateurs à votre application
17.6.4. Sources de l'application APPOS
17.6.5. L'application APPOS en quelques points essentiels
Fenêtres filles et fenêtres secondaires
413
18.1.
18.2.
413
415
416
418
419
420
427
431
432
434
435
440
443
444
449
18.3.
18.4.
19.
345
347
17.5.
18.
Développement d'applications
337
339
341
344
Une application minimale utilisant les MFC
16.2.
17.
opérateurs
Surcharge d'opérateurs unaires
Surcharge d'opérateurs binaires
Surcharge de la conversion de type
Présentation
APP06 : Une fenêtre fille dans notre fenêtre de base
18.2.1. Circulation de message entre fenêtres
18.2.2. Multiples tables de messages
18.2.3. Gestionnaires de messages privés
18.2.4. les sources de l'application APP06
18.2.5. L'application APP06 en quelques points essentiels
APP07: Une autre façon d'utiliser les fenêtres filles
18.3.1. La classe Windows d'une fenêtre
18.3.2. Gestion du changement de la taille d'une fenêtre
18.3.3. Les sources de l'application APP07
18.3.4. L'application APP07 en quelques points essentiels
APP08 : Implémentation d'une fenêtre secondaire
18.4.1. Les sources de l'application APP08
18.4.2. L'application APP08 en quelques points essentiels
Ecrire et dessiner: le GDI
453
19.1.
19.2.
19.3.
453
455
455
455
456
458
462
463
19.4.
Qu'est-ce que le GDI?
Le device context
APP09: Affichage simple de texte
19.3.1. Affichage en dehors du message WM_PAINT
19.3.2. Affichage résultant du message WM_PAINT.
19.3.3. Les sources de l'application APP09
19.3.4. L'application APP09 en quelques points essentiels
APP10: Un tour d'horizon des fonctions de dessin du GD
19.4.
19.5.
19.6.
20.
515
20.1.
20.2.
517
519
521
522
523
524
526
527
528
529
531
533
534
535
537
538
540
541
543
543
544
545
545
20.4.
20.5.
20.6.
20.7.
Contrôle statique
Contrôle de type bouton
20.2.1. Agir sur l'état d'un contrôle de type bouton
20.2.2. Obtenir des informations sur un contrôle de type bouton
20.2.3. Messages provenant d'un contrôle de type bouton
Contrôle de type liste
20.3.1. Agir sur un contrôle de type liste
20.3.2. Obtenir des informations sur un contrôle de type liste
20.3.3. Messages provenant d'un contrôle de type liste
Contrôle d'édition
20.4.1. Agir sur un contrôle d'édition
20.4.2. Obtenir des informations sur un contrôle d'édition
20.4.3. Messages provenant d'un contrôle d'édition
Contrôle combiné
20.5.1. Agir sur un contrôle combiné
20.5.2. Obtenir des informations sur un contrôle combiné
20.5.3. Messages provenant d'un contrôle combiné
Contrôle de type ascenseur
20.6.1. Agir sur un contrôle de type ascenseur
20.6.2. Obtenir des informations sur un contrôle de type ascenseur
20.6.3. Messages provenant d'un contrôle de type ascenseur
APP13: Les contrôles en action
20.7.1. Les sources de l'application APP13
La souris et le clavier
557
21.1.
21.2.
21.3.
21.4.
557
561
563
564
564
568
568
570
572
577
577
583
21.5.
21.6.
22.
463
463
468
475
476
478
480
484
486
488
489
500
501
502
504
505
506
les contrôles
20.3.
21.
APP10: Un tour d'horizon des fonctions de dessin du GD
19.4.1. Les fonctions de dessin
19.4.2. Les sources de l'application APP10
19.4.3. L'Application APP10 en quelques points essentiels
Application APP11 : Les attributs du device context
19.5.1. Les objets du device context
19.5.2. Modes de dessin
19.5.3. Le modèle de couleur RGB
19.5.4. Les brosses
19.5.5. Les crayons
19.5.6. Sources de l'application APP11
19.5.7. L'application APP11 en quelques points essentiels
APP12: Conversion des coordonnées logiques
19.6.1. Modes de conversion fixe
19.6.2. Modes de conversion variable
19.6.3. Le texte sous les différents modes de conversion
19.6.4. Les sources de l'application APP12
Déplacement de la souris
Notifications liées aux boutons de la souris
Capture de la souris
Application APP14 : Le parcours de la souris
21.4.1. Les sources de l'application APP14
Gestion du clavier
21.5.1. Focus et caret
21.5.2. Les messages issus du clavier
21.5.3. Jeu ANSI contre jeu OEM
APP15 : Illustration de la gestion du clavier
21.6.1. Les sources de l'application APP15
21.6.2. L'application APP15 en quelques points essentiels
Les boîtes de dialogue
587
22.1.
22.2.
587
589
590
592
592
593
597
598
599
609
611
613
614
620
22.3.
22.4.
22.5.
22.6.
22.7.
22.8.
Qu'est-ce qu'une boÎte de dialogue
Créer une boîte de dialogue
22.2.1. Concevoir une boite de dialogue avec AppStudio
22.2.2. Chaînes de caractères dans les ressources
Accès aux contrôles d'une boÎte de dialogue
Echange entre variables et contrôles
Boîte de dialogue modale
Application APP16 : fromage et dessert
22.6.1. Les sources de l'application APP16
22.6.2. L'application APP16 en quelques points essentiels
Boîte de dialogue non modale
Application APP17: Exemple de boîte de dialogue non modale
22.8.1. Les sources de l'application APP17
22.8.2. L'application APP17 en quelques lignes
22.9.
23.
625
23.1.
23.2.
23.3.
23.4.
626
627
630
632
634
642
644
644
645
647
649
24.1.
24.2.
24.3.
649
652
656
657
658
662
663
665
667
671
25.1.
25.2.
25.3.
25.4.
25.5.
25.6.
671
672
674
677
679
682
683
687
690
695
696
698
712
716
717
720
721
723
725
741
25.8.
Présentation
La classe Cdocument
La classe Cview
Interaction entre vues et documents
La classe CdocTemplate
L'application APP19 : Application mono- document, mono-vue
25.6.1. Les sources de l'application APP19
25.6.2. L'application APP19 en quelques points essentiels
Ouvrir plusieurs vues dans un même cadre: les fenêtres divisibles
25.7.1. L'application APP20: une application mono-document à plusieurs vues
25.7.1.1.
La liste chaînée des tâches
25.7.1.2.
Les sources de l'application APP20
25.7.1.3.
L'application APP20: en quelques points essentiels
Application MOI
25.8.1. Vues et documents dans une application MOI
25.8.2. Les ressources d'une application MOI.
25.8.3. L'application APP21: Tracé de courbes
25.8.4. Masques de saisie: la classe CformView
25.8.5. Les sources de l'application APP21
25.8.6. L'application APP21 en quelques points essentiels
Les librairies dynamiques
743
26.1.
26.2.
26.3.
26.4.
743
745
748
750
750
750
752
753
753
756
757
761
778
26.5.
27.
La segmentation
Les modèles de mémoire
Allocation dynamique de mémoire
24.3.1. L'opérateur new
24.3.2. Les fonctions de gestion de mémoire de l'APl Windows
Gestion des fichiers
24.4.1. Ouvrir un fichier
24.4.2. Ecrire, lire et se déplacer dans un fichier
24.4.3. Les exceptions liées aux fichiers
Les documents et les vues
25.7.
26.
Les bitmaps dans les ressources
Affichage d'un bitmap
Duplication de bitmap
L'application APP18: créer et gérer des bitmaps
23.4.1. Les sources de l'application APP18
23.4.2. L'application APP18 en quelques points essentiels
Format des bitmaps
23.5.1. Bitmaps dépendant du matériel (DDB)
23.5.2. Bitmap indépendant du matériel (DIB).Format en mémoire
23.5.3. Bitmap indépendant du matériel (DIB).Format sur disque
La gestion de mémoire & la gestion des fichiers
24.4.
25.
620
621
Les bitmaps
23.5.
24.
22.8.2. L'application APP17 en quelques lignes
Les boîtes de dialogue standard
Présentation
Chargement d'une librairie dynamique
Spécificités des librairies dynamiques
Créer une librairie dynamique utilisant les classes MFC
26.4.1. Création d'un projet de type librairie dynamique
26.4.2. Prototypes des fonctions exportées
26.4.3. Fichier de définition d'une librairie dynamique
26.4.4. Création de la librairie d'importation
26.4.5. Utiliser l'architecture d'application MFC pour une librairie dynamique
APP22 : développement de librairie dynamique
26.5.1. Les hooks
26.5.2. Les sources de l'application APP22
26.5.3. L'application APP22 en quelques points essentiels
Le presse-papiers
785
27.1.
27.2.
27.3.
27.4.
27.5.
27.6.
786
787
789
790
791
792
Les formats du presse-papiers
Transférer du texte dans le presse-papiers
Récupérer du texte depuis le presse-papiers
Le presse-papiers est une ressource partagée
Le presse-papiers peut simultanément contenir plusieurs formats
La copie différée
28.
29.
27.6.
27.7.
La copie différée
Copie différée dans le Presse-papiers: application APP23
27.7.1. Les sources de l'application APP23
27.7.2. L'application APP23 en quelques points essentiels
27.8.
Les formats privés
27.9.
Créer un visionneur de presse-papiers
27.10. Un visionneur de presse-papiers: l'application APP24
27.10.1.
Les sources de l'application APP24
27.10.2.
L'application APP24 en quelques points essentiels
792
794
794
804
806
808
809
810
816
Fontes de caractères, Palette de couleurs
821
28.1.
28.2.
28.3.
28.4.
28.5.
28.6.
28.7.
28.8.
Présentation des fontes
Les types de fontes
Les familles de fontes
Mesure d'un caractère
Créer et sélectionner des fontes logiques
Utiliser les fontes du stock de Windows
Enumérer des fontes de caractères
Exemple d'utilisation des fontes: application APP25
28.8.1. Les sources de l'application APP25
28.8.2. L'application APP25 en quelques points essentiels
28.9.
Les palettes de couleurs
28.10. Créer et utiliser une palette logique
821
822
823
824
828
832
833
835
835
845
848
849
28.11.
28.12.
28.13.
28.14.
852
853
855
856
857
866
Etendre l'interface de Windows
869
29.1.
29.2.
869
871
871
873
875
879
895
901
29.3.
29.4.
29.5.
29.6.
30.
911
30.1.
30.2.
30.3.
30.4.
30.5.
911
914
918
919
921
926
930
957
973
Présentation
Client et serveur OLE
Intégration d'objets et liaison sur objets
Interface utilisateur d'une application OLE
La programmation de l'OLE
30.5.1. La programmation du client OLE
30.5.2. Exemple de serveur OLE: l'application APP29
30.5.3. La programmation du serveur OLE
Migration de l'application cliente de Visual C++ 1.0 vers Visual C++ 1.5
Les contrôles Visual Basic
31.1.
31.2.
31.3.
31.4.
32.
Economiseur d'écran. Principe
La programmation d'un économiseur d'écran
29.2.1. La librairie dynamique SCRNSA VE.LlB
29.2.2. Les fonctions exportées de votre économiseur d'écran
Créer sa propre classe d'économiseur d'écran
Les sources de la classe CScrnSaveWnd et des classes associées
Exemple d'utilisation de la classe CScrnSaveWnd : l'économiseur d'écran SpotLight
Application du panneau de configuration
OLE (Object linking and Embedding)
30.6.
31
Référencer les couleurs d'une palette logique
Modifier une palette logique
Gérer les changements dans la palette système
Illustration des palettes de couleurs: Application APP26
28.14.1.
Les sources de l'application APP26
28.14.2.
L'application APP26 en quelques points essentiels
Présentation
Interface d'un contrôle Visual Basic
31.2.1. Données d'un objet Visual Basic: les propriétés
31.2.2. Fonctions d'un objet Visual Basic: les méthodes
31.2.3. Notifications d'un objet Visual Basic: les méthodes
La classe MFC encapsulant les contrôles Visual Basic
31.3.1. Accéder aux propriétés du contrôle
31.3.2. Traitement des événements d'un contrôle Visual Basic
31.3.3. Utilisation d'un contrôle Visu al Basic
Exemple d'utilisation d'un contrôle Visual Basic: l'application APP31
31.4.1. Création de l'application APP31 point par point
31.4.2. Les sources de l'application APP31
Annexes
32.1.
32.2.
32.3.
981
981
983
983
987
987
989
990
993
994
994
996
1006
1021
A : Les classes de la librairie MFC
B : La table des messages
C : Aide au débogage
1021
1025
1032
33.
TOP
Index
1035