Nous allons créer un nouveau projet nommé tp2.
Cliquez sur Fichier puis Nouveau.
Ensuite, dans le carrousel choisissez Projet (L'immense P jaune) :
L'assistant ouvre la première fenêtre de dialogue :
Saisissez les informations « Tp2 » dans le champ Nom du projet : et un résumé si vous le désirez ensuite cliquez sur le bouton symbolisant Suivant.
Voici le nouvel écran :
Comme nous n'avons aucun document à ajouter, nous pouvons cliquer sur Suivant.
Ici, l'assistant nous demande ce que nous voulons réaliser, le choix par défaut « Exécutable (.exe) » nous convient, cliquons sur le bouton Suivant.
Le choix par défaut « Pocket Pc (2002,2003)» nous convient, cliquons sur Suivant.
Ici, vu la modestie de notre projet, nous n'allons rien modifier à cet écran et passer directement au suivant.
Là non plus, nous n'avons rien à indiquer, hop suivant !
Ici, indiquez que vous travaillez seul et cliquez sur Suivant.
Nous n'allons pas utiliser le gestionnaire de sources, un clic sur Suivant.
Nous n'allons pas demander à WinDev de préfixer nos variables et autres objets, choisissez le choix « Non, ne pas utiliser de charte de programmation » et Suivant.
Ici, vous pouvez choisir une charte graphique, par exemple MediaPlayer puis un clic sur Suivant.
Notre projet ne gérera aucune autre langue que le français, vous pouvez cliquer directement sur le bouton Suivant.
Nous n'utiliserons pas de base de données, sélectionnez ce choix-là et cliquez sur le bouton Suivant.
Nous voici arrivés à la fin de l'assistant vous pouvez cliquer sur le Jet vert.
WinDev Mobile nous demande ce que l'on veut réaliser, cliquez sur « Aller directement dans WinDev Mobile»
Si vous êtes sous le tableau de bord :
Cliquez sur l'icône « Afficher le graphe du projet »:
Nous allons créer maintenant la seule et unique fenêtre du projet. Cliquez sur Fichier puis Nouveau puis dans le carrousel choisissez Fenêtre.
Choisissez ensuite Vierge.
Cliquez sur le Jet vert la nouvelle fenêtre doit apparaître à l'écran. Faites un clic droit à l'intérieur de la fenêtre pour faire surgir le menu contextuel.
Choisissez le choix Description. Remplissez les champs comme illustrés ci-dessous :
Ensuite, cliquez sur le Jet vert. Nous allons maintenant enregistrer cette nouvelle fenêtre. Pour cela cliquez sur Fichier puis Enregistrer sous
Validez en cliquant sur le bouton Enregistrer.
Nous allons nous consacrer aux objets nécessaires et ensuite au code.
Nous allons commencer par insérer un champ Bouton.
Positionnez-le comme ceci :
Faites un clic droit dessus pour faire apparaître le menu contextuel et choisissez le menu Description.
Modifiez comme indiqué ci-dessous :
Validez votre saisie en cliquant sur le jet vert.
Maintenant nous allons insérer une table mémoire. Cliquez sur cette icône :
Positionnez l'objet sous le bouton. Un assistant de création de tables se déclenche :
À ce stade, cliquez sur suivant.
Choisissez une table en affichage et sans bandeau de sélection. Cliquez ensuite sur suivant.
Comme ci-dessus, choisissez 10 colonnes, 10 lignes et pour chaque largeur de chaque colonne placez la largeur à 22 pixels ensuite cliquez sur suivant.
Vérifiez que vous avez les mêmes informations que ci-dessus en enlevant le libellé du champ et cliquez ensuite sur le jet vert.
Voilà votre table mémoire est positionnée, il reste plus qu'à la mettre en forme.
En premier lieu nous allons enlever l'affichage des titres de colonne. Pour cela, faites un clic droit sur la table et choisissez Description.
Cliquez sur l'onglet Style.
Choisissez Titre de colonne dans la combo Élément et Sans Libellé dans la combo Position.
Nous allons aussi modifier la police de caractère pour utiliser la police Small Font et un taille réduite, procédez comme ci-dessous :
Cliquez ensuite sur le jet vert pour valider vos modifications.
Comme le style par défaut a été modifié, WinDev Mobile vous propose d'ajouter ce nouveau style au projet. Cliquez sur le jet vert. Si vous rencontrez un problème à l'enregistrement sélectionnez Dissocier le champ. Voici le résultat obtenu :
Maintenant, nous allons réduire le nombre de lignes. Pour cela, réduisez la hauteur de la table pour n'avoir que 10 lignes.
Voici ce que vous devriez obtenir après réduction des largeurs de colonne et réajustement de la largeur globale de la table.
Le dernier objet à placer et un bouton.
Créez-en un et placez-le comme ceci :
Nous allons lui donner un nom et un libellé plus explicite. Faites un clic droit dessus et choisissez Description.
Modifiez le nom et le libellé comme ci-dessus. Ensuite, validez.
Nous allons maintenant commencer la phase de codage par la création d'une variable locale à la fenêtre.
Faites un clic droit sur une zone vierge de la fenêtre, ensuite choisissez code. Saisissez ceci dans la zone déclaration globale de la fenêtre Départ :
Maintenant nous allons créer une procédure locale que nous nommerons « RemplirTable »
Dans la zone inférieure de l'éditeur, cliquez sur l'onglet du code, puis sur « Procédures locales». Enfin, faites un clic avec le bouton droit de la souris, dans la zone de droite pour faire apparaître le menu contextuel suivant.
Saisissez « RemplirTable » en validant la saisie en appuyant sur la touche entrée.
Vous devriez vous retrouver ensuite sous l'éditeur de code.
Voici le code que je vous laisse saisir. Je donnerai quelques explications ensuite.
Nous déclarons plusieurs variables, des indices (i,j) un compteur (t), une chaine (sMesValeurs) qui contiendra le contenu du tableau (MonTableau).
Le code commence à affecter à la variable globale SymboleMagique un caractère choisi au hasard parmi les codes ASCII compris entre 224 et 250.
Ensuite, la table mémoire est vidée.
Maintenant le processus de remplissage de la table commence : pour chaque ligne (de i=1 à 10) nous allons remplir chaque colonne (de j=1 à 10) de la valeur du compteur plus le SymboleMagique si le compteur est un multiple de neuf sinon un symbole ASCII pris au hasard si compteur n'est pas un multiple de 9
À la fin du traitement de j, SmesValeurs récupère tous les éléments du tableau séparés par le caractère TAB.
Enfin, sMesValeurs est ajouté à la table.
Notez que nous aurions pu changer les deux dernières lignes par ceci :
Tableajoute(Table1,MonTableau[1]+tab+Montableau[2]+tab+…jusqu'a .+MonTableau[10])
Voilà pour la procédure. Il nous faut programmer l'affichage de la table. Pour cela, faites un clic droit dessus et choisissez Code.
Saisissez le code suivant dans la zone Initialisation de Table1 :
La table lancera la procédure de remplissage dès qu'elle sera créée.
Intéressons-nous au code du bouton :
Le code affichera une fenêtre d'information indiquant quel code a été choisi. Ensuite dès que l'utilisateur aura fermé la fenêtre d'information la table se régénérera.
Nous allons maintenant nous occuper du premier bouton qui nous permettra d'afficher les règles du jeu dans une autre fenêtre.
Pour cela nous allons créer une nouvelle fenêtre nommée RegleJeu. Le processus de création a été vu, je ne vous le détaille donc pas.
Parvenu à ce stade, enregistrez le projet.
Nous allons placer un libellé et un bouton à l'intérieur de cette nouvelle fenêtre. Pour placer le libellé cliquez sur cette icône :
Placez le libellé comme ceci en l'étirant sur les 2 tiers de la surface :
Faites un clic droit et choisissez description et remplissez comme ceci :
Modifiez le style, car par rapport au gabarit que nous avons utilisé les caractères s'affichent en blanc.
Placez la couleur police sur noir, validez et acceptez la création d'un nouveau style.
Il ne nous reste qu'a placer un bouton de fermeture. Faites comme ceci :
Faites un clic doit dessus et choisissez Description dans le menu contextuel.
Modifiez comme indiquer ci-dessus et ensuite cliquez sur l'icône d'ouverture de l'éditeur de code.
Dans l'éditeur saisissez ceci :
Voilà vous pouvez sauvegarder cette fenêtre et revenir sur la fenêtre Départ pour coder le bouton Règle. Positionnez-vous dans la zone de code du bouton et saisissez le code d'ouverture de fenêtre :
Lancez ce projet et voyez par vous-même si le programme devine vos pensées!!!!
Je pense que les plus rusés auront trouvé l'astuce, pour les autres, comme indice je vous dirai juste de regarder la diagonale.