Introduction à C++ Builder, tutoriel installation C++ Builder en pdf.
La partie « visible » d’un composant TScrollBox est spécifiée, comme à l’accoutumée par ses propriétés Width et Height. Le nouveau concept est celui d’étendue virtuelle. En effet, le défilement sert à afficher les parties cachées de l’étendue virtuelle du composant. La largeur et la hauteur de cette dernière sont respectivement indiquées par les propriétés Range des ascenseurs horizontaux et verticaux lesquels sont stockés dans les propriétés HorzScrollBar et VertScrollBar de la TScrollBox.
L’étendue virtuelle peut varier au cours de la vie de l’application. Lorsqu’elle devient inférieure ou égale à la partie visible, les ascenseurs sont cachés.
Autre chose importante à savoir : modifier la position des ascenseurs ne génère pas d’évènement particulier. Vous ne pouvez donc pas savoir en temps réels si leur position a changé. En conséquence, vous devez prévoir l’affichage complet de la zone virtuelle.
Que peut on mettre dans une TScrollBox ?
Potentiellement, il est possible d’intégrer dans une TScrollBox n’importe quel type de contrôle, ce qui peut s’avérer pratique si l’on doit créer une interface graphique à la main en fonction d’un fichier de configuration.
Supposons par exemple, que vous écriviez une application dont certaines options booléennes sont passées dans un fichier. Vous souhaitez associer une case à cocher à chacune de ces options. Comme vous ne connaissez pas leur nombre à l’avance, vous êtes obligés de les construire à la main lors de l’exécution de votre programme.
Afin de ne pas surdimensionner votre fenêtre, il est possible de les placer dans une TScrollBox. Si vous activez la propriété AutoScroll, l’espace virtuel sera étendu automatiquement lorsque vous ajouterez des contrôles dans votre boîte déroulante. De toute façon, il vous est toujours possible de modifier les Range à votre guise.
Le plus souvent, les TScrollBox sont associées à un contrôle graphique ou un contrôle fenêtré unique dans le but d’afficher un document de grande taille. C’est ce que l’on appelle une vue.
Exercice résolu : affichage d’un dessin avec facteur de zoom
L’exemple que nous allons traiter utilise un TImage placé dans une TScrollBox pour afficher un dessin de taille variable en fonction d’un certain facteur de zoom. Afin de ne pas compliquer inutilement l’exercice, nous afficherons une suite de 25 cercles concentriques.
Le facteur de zoom (variant entre 1 et 20) est indiqué par un composant TTrackBar lequel modélise un curseur placé le long d’une règle. Les propriétés les plus intéressantes sont
…….
1. C++ BUILDER : UN ENVIRONNEMENT RAD BASÉ SUR C++
1.1 UN ENVIRONNEMENT RAD
1.1.1 PHILOSOPHIE
1.1.2 LIMITATIONS
1.2 C++ BUILDER VIS À VIS DE LA CONCURRENCE
1.2.1 C++ BUILDER VS DELPHI… OÙ LES FRÈRES ENNEMIS !
1.2.2 DIFFÉRENCES PAR RAPPORT À BORLAND C++
1.2.3 C++ BUILDER CONTRE VB
1.3 POUR CONCLURE
2. L’ENVIRONNEMENT DE DÉVELOPPEMENT C++ BUILDER
L’INTERFACE DE C++ BUILDER
2.2 LES COMPOSANTES DE C++ BUILDER
2.3 CRÉATION D’UNE APPLICATION SIMPLE C++ BUILDER
2.4 L’INSPECTEUR D’OBJETS ET LES PROPRIÉTÉS
2.5 LA PROPRIÉTÉ NAME
2.6 MANIPULER LES ÉVÉNEMENTS
2.7 C++ BUILDER ET LES EXCEPTIONS
2.8 UTILISEZ LA FENÊTRE D’HISTORIQUE !
3. ETUDE DE LA VCL
3.1 ORGANISATION DE LA VCL
3.2 LES COMPOSANTS
3.3 LES CONTRÔLES
3.3.1 LES CONTRÔLES FENÊTRÉS
3.3.2 LES CONTRÔLES GRAPHIQUES
3.4 LES BOÎTES DE DIALOGUE STANDARD DE WINDOWS
3.4.1 LES BOÎTES DE DIALOGUE DE MANIPULATION DE FICHIERS
3.4.2 LA BOÎTE DE SÉLECTION DE COULEURS
3.4.3 LA BOÎTE DE SÉLECTION DE FONTE
3.4.4 LES BOÎTES DE RECHERCHE ET RECHERCHE / REMPLACEMENT
3.4.5 EXERCICE SUR LES BOÎTES DE DIALOGUE COMMUNES ()
3.5 LES BOÎTES COMBO
3.5.1 EXERCICE RÉSOLU N°1 ()
3.5.2 EXERCICE RÉSOLU N°2 ()
3.5.3 EXERCICE RÉSOLU N°3 ()
3.5.4 EXERCICE N°4 ()
3.6 LES MENUS
3.6.1 MISE EN PLACE D’UN MENU PRINCIPAL
3.6.2 L’ÉDITEUR DE MENUS
3.6.3 L’UTILISATION DES MENUS
3.6.4 UN EXEMPLE DE MODIFICATION PAR PROGRAMMATION : LA LISTE DES DERNIERS FICHIERS
OUVERTS
3.6.5 LES MENUS SURGISSANTS
3.7 LES BOÎTES DÉROULANTES
3.7.1 GÉNÉRALITÉS
Introduction à C++ Builder (720 KO) (Cours PDF)