Bonjour
J'aimerai dès qu'on sélectionne après le dernier item d'un listbox s'il n'y a rien d'éviter de voir mon programme planter (sélection hors indice) !
merci
de votre inspiration
Bonjour
J'aimerai dès qu'on sélectionne après le dernier item d'un listbox s'il n'y a rien d'éviter de voir mon programme planter (sélection hors indice) !
merci
de votre inspiration
Il suffit de catcher l'exception...
Avec un try
except mais il n'y a pas une autre solution ?
sans gérer les exceptions ?
Comment peut-on sélectionner un item qui n'existe pas ?
Normalement, ItemIndex < Items.Count![]()
"Il n'y a pas de bonnes réponses à une mauvaise question." (M. Godet)
-----------------------
Pensez à cloturer votre sujet- Aucune réponse aux sollicitations techniques par MP
Usus magister est optimus
Je vois bien qu'il n'ya pas d'items après mon dernier item
dans mon listbox mais j'aimerai anticiper
si l'utilisateur clique par inadvertance dans la zone blanche de la listbox où rien ne figure et éviter ainsi un plantage !
C'est à cela que sert les try ... Except.
ok j'ai pas le choix
je pensais pouvoir y échapper
merci à vous deux
Bah si tu as le choixEnvoyé par bertrand_declerck
Quel code est exécuté quand l'utilisateur clique dans le listebox
Voilà le code
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 statusbar1.Panels[1].text := ListBox1.Items[ListBox1.itemindex]; if statusbar1.Panels[1].Text <> '' then begin form1.Listingdesimpays1.Enabled := true; end;
dès qu'on a choisit un élément de ma listbox, un bouton devient accessible !
Si tu cliques sur une zone vide, itemindex vaut -1, donc dans ce cas il ne faut pas acceder aux items, c'est tout.
Envoyé par cpdump
itemindex est le rang-1 de l'item sélectionné.
Si itemindex vaut -1, c'est qu'aucun n'est sélectionné,
Mais
sauf à commencer par désélectionner tout item (par ex dans un MouseOver), si on clique sur 1 item puis dans la zone blanche, l'item reste sélectionné.
Ceci dit, je continue de m'étonner qu'un clic sur la zone blanche fait planter le prog.
"Il n'y a pas de bonnes réponses à une mauvaise question." (M. Godet)
-----------------------
Pensez à cloturer votre sujet- Aucune réponse aux sollicitations techniques par MP
Usus magister est optimus
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager