Tri d'une list box

Messages postés
23
Date d'inscription
lundi 24 décembre 2018
Dernière intervention
16 février 2019
- - Dernière réponse : Whismeril
Messages postés
12729
Date d'inscription
mardi 11 mars 2003
Dernière intervention
16 février 2019
- 3 févr. 2019 à 23:19
comment faire un tri décroissant
dans une List box sans devoir ajouter des 1 ou 2 (0) devant chaque chiffre
Afficher la suite 

Votre réponse

10 réponses

Messages postés
1794
Date d'inscription
samedi 11 janvier 2014
Statut
Contributeur
Dernière intervention
14 février 2019
60
0
Merci
Bonjour !
Tu as oublié ce mot dans ton message : penses-y pour les prochaines fois
Pour ton souci je t'explique
La Listbox n'affiche que des chaines de caractères même si c'est un nombre qui est affiché dans la Listbox
Dans ce cas au lieu d'afficher la Listbox et de la trier il est préférable de trier d'abord les valeurs elles-mêmes ( des Integer ou des Double ou autres) et ensuite afficher ces valeurs triées dans la Listbox .
Dis toi bien que les contrôles (Label, Textbox, Listbox) servent à afficher des valeurs et non de zone de stockage pour ces valeurs .
Un exemple tout simple :
Dim Valeur as Integer = 8
TextBox1.Text = Valeur.ToString

Dans le code précédent je dimensionne Valeur comme un Integer et je lui donne la valeur 8
ensuite je l'affiche dans la TextBox1
Imagines que j'ai besoin de ce 8 ensuite : j'ai directement Valeur qui me le donne au lieu de faire
Cint(Textbox1.Text)
qui me convertit en Integer le texte en String de la Textbox

Whismeril
Messages postés
12729
Date d'inscription
mardi 11 mars 2003
Dernière intervention
16 février 2019
332 -
Bonjour vb, tu lui as donné le code en vb.net. Ca ne marchera pas en vb6.
vb95
Messages postés
1794
Date d'inscription
samedi 11 janvier 2014
Statut
Contributeur
Dernière intervention
14 février 2019
60 > Whismeril
Messages postés
12729
Date d'inscription
mardi 11 mars 2003
Dernière intervention
16 février 2019
-
Bonjour Whis !
Oh la boulette !
' code en VB6
Dim Valeur as Integer = 8
TextBox1.Text = Cstr(Valeur)
Commenter la réponse de vb95
Messages postés
23
Date d'inscription
lundi 24 décembre 2018
Dernière intervention
16 février 2019
0
Merci
bonjour
je vais essayerde trier mes valeurs mais alors il me faut les mettre dans un tableau pour les triees
merci
Commenter la réponse de totoche1748
Messages postés
23
Date d'inscription
lundi 24 décembre 2018
Dernière intervention
16 février 2019
0
Merci
bonjour vb95 et autre
moi ce que je voudrai c'est extraire la valeur maxi d'une List box pour la mettre dans un text box en sachant que la valeur maxi peut évoluer a tout moment vu que je rentre des valeurs différentes a chaque fois que je rajoutes des capsules de champagne dans mon programme je veux donc que mon text box évolue en permanence si je venais a rajouter une capsule d'une valeurs plus élevée que celle qui y figure
sachant que j ai 5000 capsules et que ma collection évolue toujours
c est pour cela que je voulais faire un trie de ma List box pour après ressortir la valeur la plus grande
en attente de réponses merci
Commenter la réponse de totoche1748
Messages postés
12729
Date d'inscription
mardi 11 mars 2003
Dernière intervention
16 février 2019
332
0
Merci
Je vais poser une quesrion bête, vu ta question je suppose que tu débutes.
Pourquoi avoir choisi vb6?
  • microsoft ne le vend plus depuis 1999 (20 ans....), d’ailleurs se le propocurer aujourd’hui est souvent illégal.
  • les mises à de sécurité ont été faites pour les clients grand compte jusqu’en 2008 (11 ans)
  • le foncrionnemet des logiciels n’est plus garanti depuis Vista

Que des vieux de la vieille soit resté en vb6 par simplicité, je le comprends, mais débuter dans ce langage en 2019 le paraît aberrant.

Pour rester chez Microsoft, Visual Studio Community est gratuit sous conditions ( mais un programme perso rentre dans ces conditions) il donne accès à C#, Vb.Net, Python, F# etc... Qui sont des langages actuels, maintenus et évolutifs

Si Community te parrait trop lourd, il y a aussi les versions express ( VisualBasicExpress etc...)
Commenter la réponse de Whismeril
Messages postés
23
Date d'inscription
lundi 24 décembre 2018
Dernière intervention
16 février 2019
0
Merci
bonjour
je suis reste a vb6 car c est le logiciel qui sur mon pc cela me convient bien
tu n a pas repondu a ma question
un vieux de la vieille comme tu dit
Commenter la réponse de totoche1748
Messages postés
23
Date d'inscription
lundi 24 décembre 2018
Dernière intervention
16 février 2019
0
Merci
bonjour
au vu du forum il y a pas mal de personne qui sont reste a vb 6 vu le nombre de question
Commenter la réponse de totoche1748
Messages postés
12729
Date d'inscription
mardi 11 mars 2003
Dernière intervention
16 février 2019
332
0
Merci
Oui c’est sûr qu’il y a encore du monde en vb6. Et non je n’ai pas répondu. Y’a 13 ans que je ne code plus en vb6, alors je ne me souviens pas de tout.
N’y a t il pas une propriété Sorted dans les listbox?
Commenter la réponse de Whismeril
Messages postés
1794
Date d'inscription
samedi 11 janvier 2014
Statut
Contributeur
Dernière intervention
14 février 2019
60
0
Merci
Bonjour à vous deux !
tu as raison Whis il y a bien la propriété Sorted et aussi la méthode Sort en VB 6 pour les Listbox mais le tri se fait sur le contenu String des Items de la Listbox
Ce qui fait que "12" est < à "2" alors que numériquement cela est faux !
C'est pour cela que j'ai conseillé à totoche1748 de trier d'abord les valeurs dans un tableau d'Integer par exemple puis de les afficher ensuite dans la Listbox
Pour totoche1748 je suis aussi un vieux de la vieille ( 68 balais ) et j'ai suivi l'évolution ( VB 5 puis VB 6 puis VB Net ) ! Je t'invite à prendre le train en marche si tu veux !
@ ++
Whismeril
Messages postés
12729
Date d'inscription
mardi 11 mars 2003
Dernière intervention
16 février 2019
332 -
mais le tri se fait sur le contenu String des Items
Oui, mais il suffit de rentrer les nombres au format « 001 »
vb95
Messages postés
1794
Date d'inscription
samedi 11 janvier 2014
Statut
Contributeur
Dernière intervention
14 février 2019
60 > Whismeril
Messages postés
12729
Date d'inscription
mardi 11 mars 2003
Dernière intervention
16 février 2019
-
Bonjour Whis
Mais c'est ce qu'il veut éviter justement !
voici sa demande : comment faire un tri décroissant
dans une List box sans devoir ajouter des 1 ou 2 chaines "0" devant chaque chiffre
Whismeril
Messages postés
12729
Date d'inscription
mardi 11 mars 2003
Dernière intervention
16 février 2019
332 -
Ha zut
Whismeril
Messages postés
12729
Date d'inscription
mardi 11 mars 2003
Dernière intervention
16 février 2019
332 -
Et " 1" ça ne marchait pas?
vb95
Messages postés
1794
Date d'inscription
samedi 11 janvier 2014
Statut
Contributeur
Dernière intervention
14 février 2019
60 > Whismeril
Messages postés
12729
Date d'inscription
mardi 11 mars 2003
Dernière intervention
16 février 2019
-
Salut Whis !
Non cela ne marche pas !
Dans la liste des chaines représentant des valeurs numériques il faut faire précéder la chaine d' un certain nombre de "0"
Ce nombre est = à la taille de la chaine représentant la plus grande valeur du tableau moins le nombre de caractères de la chaine représentant le nombre
Exemple "10", "21" et "125"
Taille max = 3 caractères pour "125"
"10" et "21" ont 2 caractères donc on rajoute un "0" cela devient alors "010", "021" et "125" et le tri se fait correctement
Ce qui est important c'est que le code Ascii du "0" est inférieur à celui de tous les caractères numériques de "1" à "9"
Ceci fait que "02" sera inférieur au niveau comparaison chaines à "10" alors que "10" est inférieur à "2" au niveau chaine
Commenter la réponse de vb95
Messages postés
23
Date d'inscription
lundi 24 décembre 2018
Dernière intervention
16 février 2019
0
Merci
bonjour a tous les 2
j ai suivi vaut conseille mais je n arrive pas a installer VisualBasicExpress
apparemment arrive a 25 % il s arrête et me demande de quitter je ne sais pas pourquoi
bonsoir
Whismeril
Messages postés
12729
Date d'inscription
mardi 11 mars 2003
Dernière intervention
16 février 2019
332 -
Quelle "millésime" de VBExpress? Et quel Windows as tu?
Commenter la réponse de totoche1748
Messages postés
23
Date d'inscription
lundi 24 décembre 2018
Dernière intervention
16 février 2019
0
Merci
bonjour
Visual basic express 2017 et Windows 7
ps ce matin je recommence on verra bien
Whismeril
Messages postés
12729
Date d'inscription
mardi 11 mars 2003
Dernière intervention
16 février 2019
332 -
2017 devrait marcher sur W7, cependant, je croyais que la dernière version Express était 2012, depuis c'est Community
vb95
Messages postés
1794
Date d'inscription
samedi 11 janvier 2014
Statut
Contributeur
Dernière intervention
14 février 2019
60 > Whismeril
Messages postés
12729
Date d'inscription
mardi 11 mars 2003
Dernière intervention
16 février 2019
-
Salut Whis
Visual Basic Express 2017 existe bien d'après ceci : https://visualstudio.microsoft.com/fr/vs/express/
Fais défiler la page vers le bas pour le voir
Il dise cependant que Community est préférable
Whismeril
Messages postés
12729
Date d'inscription
mardi 11 mars 2003
Dernière intervention
16 février 2019
332 -
Oui, j’avais vu
Commenter la réponse de totoche1748

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.