IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Téléchargé 8 fois
Vote des utilisateurs
0 
0 
Détails
Licence : Libre
Mise en ligne le 23 avril 2020
Plate-forme : Windows
Langue : Français
Référencé dans
Navigation

Tirage au sort de nombre dans une liste

Cette interface permet de tirer au sort une liste de nombre de 1 à 100, piochés au hasard dans un volume plus important (jusqu'à 1000)

Dans le cadre de mon projet (un Quizz visuel), cela me permet de tirer au sort quelques questions dans la marmite de questions que je constitue au fil du temps.

Cela peut servir pour effectuer un tirage au sort de cartes ou dans toute application similaire.

On commence par entrer le nombre de valeurs contenus dans la marmite au début. On appuie sur "enter" pour activer la vérification interne.

Si c'est ok, on peut entrer le nombre de tirage souhaité et on appuie sur "enter" pour activer la vérif interne du nombre.

Si c'est ok, à chaque appui sur "tirer au sort" on effectue un tirage.

Attention, pour être prise en compte, toute modif doit être validée par un "enter".

N'hésitez pas à me donner votre avis.... En espérant que cela puisse intéresser quelqu'un??.....
Avatar de Roland Chastain
Rédacteur/Modérateur https://www.developpez.com
Le 23/04/2020 à 6:41
Bonjour ! Merci pour cette contribution. Utilisant habituellement Linux, je n'ai pas encore eu le temps d'essayer le programme.

La description est un peu énigmatique. Vous avez toujours la possibilité d'éditer la page de téléchargement.
Avatar de patdu26
Membre habitué https://www.developpez.com
Le 23/04/2020 à 18:55
bonjour et merci pour la remarque.

Le contenu du texte a été tronqué et je ne pensais pas qu'on pouvais y revenir.
C'est mieux à présent, même si cela reste sans prétention.
Bonne journée!
Avatar de SergioMaster
Rédacteur/Modérateur https://www.developpez.com
Le 24/04/2020 à 8:51
Bonjour,

Côté interface, j'avoue être un peu déstabilisé par le fait de devoir absolument appuyer sur la touche "Entrée" pour valider les deux nombres. P.S. Note le "Entrée" et non "ENTRER" comme indiqué dans le mémo d'explication qui n'est pas en lecture seule. À l'ère de la souris c'est un peu dommage, suggestion utiliser l'événement OnExit, le onKeypress ne servant qu'à sortir de la zone
Code : Sélectionner tout
1
2
3
4
5
6
7
8
9
procedure TForm11.EditKeyPress(Sender: TObject; var Key: Char);
begin
 if Key=#13 then
    begin
       Key:=#0;
       SelectNext(Sender as TWinControl,true,true);
    end;
end;
Bonus le même code sert pour les deux TEdit

En second, l'utilisation d'un TMemo pour les résultats, là cela me gêne énormément. Trop compliqué, pourquoi ne pas explorer l'utilisation d'un TListBox avec des colonnes à la place ?

[Edit] Enfin en y pensant un peu plus, les StringLists pourraient peut-être être remplacée par des piles (System.generics.collections), ce serait une piste intéressante et "moderne" sur laquelle je n'ai pas le temps de me pencher
Avatar de patdu26
Membre habitué https://www.developpez.com
Le 24/04/2020 à 18:21
Bien vu SergioMaster!

J'étais moi_même peu à l'aise, à devoir valider chaque fois avec "Entrée" pour "checker" les infos entrantes, mais je n'ai pas eu l'idée, qui à présent me semble une évidence, d'employer les fonctions de la souris qui sont tellement pratiques! Désolé, j'étais trop dans ma routine à faire tourner pour y penser. La différence est grande entre amateur et pro.....

Le coup du TMEmo est en effet à supprimer également je pense.

Cette routine vise plutôt à être incluse dans un programme plus complet, présentée ici en une (pseudo??) application élémentaire, si elle peut être utilisée, voire améliorée par d'autres.

Merci pour les remarques!

Au plaisir.

Avatar de SergioMaster
Rédacteur/Modérateur https://www.developpez.com
Le 25/04/2020 à 8:31
Bonjour,

Ce matin, je me suis pris au jeu voulant voir ce que pouvait donner un TListBox et si une pile pouvait faire l'affaire.
Pour la pile, j'ai encore un doute donc je suis resté sur un TList<Integer>

Après quelques petits arrangements (taille de la liste, nombre de colonnes, etc.) voilà ma proposition en PJ.

En faire un Loto, en modifiant quelques lignes est largement envisageable, une petite version FMX me tente ...
Avatar de SergioMaster
Rédacteur/Modérateur https://www.developpez.com
Le 25/04/2020 à 10:27
Citation Envoyé par SergioMaster Voir le message

En faire un Loto, en modifiant quelques lignes est largement envisageable, une petite version FMX me tente ...
Du Loto c'est passé au Bingo mais c'est du pareil au même ou presque je ne suis pas un joueur de Loto il m'était plus facile de me pencher sur le Bingo.
J'utilise les mêmes principes que déjà débattu.

Voilà quelques images

et je ne suis pas peu fier de vous montrer le même programme sous Linux, un Linux sous Windows (WSL) sans machine virtuelle SVP


En PJ, le source.

À améliorer : la présentation (je n'aime pas trop le bouton [Boule]), l'ajout d'un style (facile), le tri dans l'affichage des résultats (vraiment facultatif) , l'annonce des boules via haut-parleurs (ça, ça me tente) et, @gbebgreg, la même version mais 3D
Avatar de patdu26
Membre habitué https://www.developpez.com
Le 28/04/2020 à 11:21
Bonjour, le code est mieux pensé le résultat est efficace. Il est important d'avoir du recul sur tous les objets disponibles pour choisir les plus appropriés, (TMemo, TList, TSpinEdit, TListBox) c'est là aussi que la différence se fait entre les novices et les pros...
Je n'ai pas abordé encore le fmx mais cela se fera surement quand je me dépatouillerai mieux déjà en vcl.
Merci pour le boulot et les idées!
Developpez.com décline toute responsabilité quant à l'utilisation des différents éléments téléchargés.