Cours WinDev : Bases en PDF (Intermédiaire)
WinDev, environnement de développement orienté création rapide d'interfaces et de formulaires métiers, combine un langage, un éditeur de fenêtres et un ensemble de contrôles prêts à l'emploi. Le support couvre les objets UI fondamentaux (sélecteurs, combo, table mémoire) et fournit des extraits de code pour automatiser la saisie et la gestion de tables en mémoire afin de prototyper des applications métier. Le moteur natif HFSQL est utilisé pour les exemples portant sur la persistance. Téléchargez le PDF gratuit pour suivre les manipulations pas à pas.
Conçu initialement sous WinDev 19, les concepts de manipulation des contrôles UI et des tables mémoire restent applicables aux versions récentes, avec de possibles adaptations mineures selon l'évolution de l'IDE.
Compatibilité Versions
Exemples vérifiés pour compatibilité ascendante : versions 19, 25, 27 et 2025. Les principes de construction d'interfaces, la gestion d'événements et les fonctions de table mémoire restent applicables ; vérifiez la documentation de la version cible pour les appels spécifiques ou les améliorations de l'API.
🎯 Ce que vous allez apprendre
- Gestion des sélecteurs — comprendre l'objet sélecteur (nom, libellé, onglet Contenu) et son cycle d'événements pour capter l'indice de sélection et réagir à chaque modification. Exemple d'événement permettant d'afficher dynamiquement la sélection dans un champ de saisie et corriger le comportement restituant l'indice plutôt que le libellé.
- Listes déroulantes (combo) — création d'une combo remplie par programmation et liaison du choix à un champ de formulaire ; implémentation d'un bouton de remplissage et propagation de la valeur affichée.
- Tables mémoire et colonnes — structure d'une table (lignes, colonnes, cellules), définition de types et masques de saisie, et limitation de la taille des champs pour garantir une saisie cohérente.
- Remplissage et manipulation programmatique — fonctions pour ajouter, supprimer ou vider des lignes (ex.
TableAjoute,TableAjouteligne) et implications sur la gestion des colonnes. - Navigation entre fenêtres — ouverture et fermeture de fenêtres via les instructions du projet ; déclaration d'une fenêtre comme première fenêtre du projet et code d'orchestration (ouvre/ferme).
- Automatisation avec structures de contrôle — utilisation de la boucle
Pourpour remplir une table à partir de valeurs saisies (exercice pratique : champs « Multiplicateur » et « Profondeur »).
📑 Sommaire du document
- Sélecteurs
- Listes déroulantes
- Tables mémoire
- Création et gestion des colonnes (types et masques de saisie)
- Actions sur la table (remplir, supprimer, vider)
- Fenêtre de départ et navigation (ouvre/ferme)
- Exercice applicatif
Pourquoi choisir ce support d'autoformation ?
Support concis et orienté pratique, idéal pour une autoformation WinDev structurée : captures d'écran annotées, pas à pas et extraits de code facilitent la mise en pratique. Le document est adapté pour débuter avec WinDev et progresser vers des usages plus avancés, avec des repères clairs pour l'intégration de HFSQL lorsque la persistance est requise. Des recommandations d'accessibilité (libellés explicites, navigation clavier, contrôles correctement étiquetés) sont fournies pour améliorer l'ergonomie des formulaires et la conformité aux bonnes pratiques d'interface.
Pourquoi choisir ce tutoriel WinDev ?
Jean‑Luc Baptiste signe ce document et illustre les fonctions concrètes utilisées dans l'éditeur (remplissage de combo, TableAjoute, masques de saisie). Le format privilégie l'exercice pour consolider les acquis et fournit des blocs de code prêts à copier, ainsi que des repères pour l'accessibilité des formulaires.
👤 À qui s'adresse ce cours ?
- Public cible : développeurs ou étudiants en développement d'applications souhaitant concevoir des formulaires et écrans métier, ainsi que techniciens réalisant des prototypes d'interface.
- Prérequis : connaissances de base en programmation (variables, structures de contrôle comme
Pour), familiarité avec un IDE et notions élémentaires de champs/événements ; savoir créer un projet et exécuter une fenêtre via l'éditeur. - Remarque déploiement : le cours présente des techniques transférables pour le développement multi-plateforme et le déploiement sur Windows, certaines distributions Linux et plateformes mobiles.
Prérequis techniques
Versions supportées : 19, 25, 27 et 2025. Pour reproduire les exemples du PDF, installez une édition de l'IDE correspondant à ces versions et vérifiez les modules optionnels nécessaires (contrôles UI et gestion HFSQL). Consultez la documentation officielle de la version cible pour les changements d'API ou les composants additionnels.
❓ Foire Aux Questions (FAQ)
Pourquoi WinDev renvoie-t-il l'indice d'une combo plutôt que le libellé ? Par défaut l'objet retourne la position de l'élément sélectionné ; l'exemple montre comment, dans l'événement de sélection, affecter explicitement la valeur affichée au champ cible afin d'obtenir le libellé pour l'affichage ou le traitement.
Quelle différence entre Table mémoire et Table fichier ? Une table mémoire est pilotée par programmation (construction et remplissage via les API telles que TableAjoute) et convient aux données temporaires ou aux prototypes rapides. Une table fichier est liée à un fichier de données ou à une requête et assure la persistance.
Table mémoire vs fichier HFSQL : HFSQL est le moteur natif qui gère la persistance, les transactions et l'indexation. Pour des applications nécessitant durabilité et intégrité, basculez vers HFSQL ou une base externe ; le document indique quand migrer un prototype mémoire vers un modèle fichier.
Prototypage vs Production
Les tables mémoire conviennent pour le prototypage, les tests et les interfaces où la latence d'écriture n'est pas critique. Elles permettent un développement rapide d'écrans et la validation des flux utilisateur. Pour la production, privilégiez une solution fichier (HFSQL ou base externe) afin d'assurer durabilité, gestion des transactions, accès concurrent et capacités de requêtage. Le document présente des exemples pour structurer les données, définir des index et planifier la migration d'un prototype mémoire vers un modèle fichier sécurisé et maintenable.
WinDev et multi-plateforme
Le déploiement sur plusieurs systèmes impose de prévoir la portabilité dès la conception : limiter les dépendances spécifiques à un OS, adapter les masques d'entrée et concevoir des interfaces réactives aux différentes résolutions. Le PDF illustre des patterns réutilisables pour maintenir un seul code‑base tout en ciblant plusieurs environnements.