Novembre 2024 | Lun | Mar | Mer | Jeu | Ven | Sam | Dim |
---|
| | | | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | | Calendrier |
|
|
| petit problème de combo | |
| | Auteur | Message |
---|
bignono
Nombre de messages : 1127 Age : 67 Localisation : Val de Marne Date d'inscription : 13/11/2011
| Sujet: petit problème de combo Lun 10 Déc 2012 - 11:05 | |
| Bonjour à tous, Voilà mon problème: j'ai un combo avec des valeurs différentes de 0 à 15, et je lui affiche en texte la valeur "0". Quand je choisi une valeur, le programme me l'affiche avec un print. Mais quand je sélectionne la valeur 10, je veux qu'il m'affiche 0 avec le print et qu'il me mette également 0 dans le texte du combo. Seulement voilà, il laisse invariablement le texte "10" dans le combo même si je lui dit text 1,"0". J'ai essayé en supprimant et remettant l'item concerné, mais là il ne me met rien en texte. - Code:
-
dim i,ch label choix combo 1:left 1,100 for i=0 to 15:item_add 1,str$(i):next i text 1,"0" on_change 1,choix
end
choix: ch=val(text$(1)):if ch=10 then text 1,"0":ch=0 ' ch=val(text$(1)):if ch=10 then item_delete 1,item_index(1):item_add 1,str$(ch):text 1,"0":ch=0 print_locate 10,10:print ch;" " return
Si quelqu'un a une solution à mon problème??? A+ | |
| | | Invité Invité
| Sujet: Re: petit problème de combo Lun 10 Déc 2012 - 11:51 | |
| Bonjour Bignono, J'ai jamais pu directement modifier le contenu de l'edit d'un combo directement. Pour le faire, il faut réécrireà chaque fois tout le combo, et mettre le texte final dans l'edit. La solution que j'utilisais, est de mettre un deuxième edit sur celui du combo en réglant les valeur de dimensionnement, et là cet edit on y met ce qu'on veut. Maintenant à ma demande je crois a fait une dll qui permet de sélectionner un item. Mince voila que doit partir, mais voit si avec: then res% = dll_call2("SelectComboBoxItem",hnd%,item%) ceci Ou alors tu n'écris dans le combo que vite fait : right$( str$(a%),1) Salut! |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: petit problème de combo Lun 10 Déc 2012 - 12:41 | |
| En effet, c'est bizarre. En plaçant un message juste avant le RETURN de CHOIX, on voit que le texte de la combo a bien été remplacé par "0". Mais dès que le return est fait, Panoramic remet la valeur sélectionnée. On ne peut donc pas changer la valeur du combo à l'intérieur d'une routine évènement de ce même combo. Et j'ai essayé avec ON_CLICK - c'est pareil. Solution: tu lances un timer juste avant le return, et sa routine va placer le "0" dans la combo. Essaie ceci: - Code:
-
dim i,ch label choix, reset combo 1:left 1,100 for i=0 to 15:item_add 1,str$(i):next i text 1,"0" on_click 1,choix
timer 3 : timer_off 3 : timer_interval 3,100 : on_timer 3,reset end
choix: ch=val(text$(1)) if ch=10 then text 1,"0" : ch=0 : timer_on 3 ' ch=val(text$(1)):if ch=10 then item_delete 1,item_index(1):item_add 1,str$(ch):text 1,"0":ch=0 print_locate 10,10:print ch;" " return
reset: text 1,"0" timer_off 3 return | |
| | | papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
| Sujet: Re: petit problème de combo Lun 10 Déc 2012 - 12:47 | |
| Salut bignono. Si j'ai bien compris : Essayer d’ajouter une espace avant le 0 dans ‘text 1, " 0 " ’ en ligne 11 - Code:
-
ch=val(text$(1)):if ch=10 then text 1," 0":ch=0
| |
| | | Jean Claude
Nombre de messages : 5950 Age : 70 Localisation : 83 Var Date d'inscription : 07/05/2009
| Sujet: Re: petit problème de combo Lun 10 Déc 2012 - 13:13 | |
| Comment tu as fait Papydall pour trouver un truc pareil, çà demande explication... D'autre part je pense qu'il y a un souci avec Combo Dans le code ci-dessous observez le hint et le texte du combo. - Code:
-
dim i,ch label choix combo 1:left 1,100 for i=0 to 15:item_add 1,str$(i):next i text 1,"0" on_change 1,choix
end
choix: ch=val(text$(1)):if ch=10 then text 1,"0":ch=0 ' ch=val(text$(1)):if ch=10 then item_delete 1,item_index(1):item_add 1,str$(ch):text 1,"0":ch=0 print_locate 10,10:print ch;" " return A+ | |
| | | bignono
Nombre de messages : 1127 Age : 67 Localisation : Val de Marne Date d'inscription : 13/11/2011
| Sujet: Re: petit problème de combo Lun 10 Déc 2012 - 13:50 | |
| Merci de vos réponses. @ Papydall, l'espace, ça ne fonctionne pas chez moi! @ Jean-Claude, ton code est strictement le même que le mien? @ Cosmos, utiliser un edit par dessus le combo est faisable, mais faut gérer un edit en plus. La solution de Klaus avec le timer fonctionne super bien et je l'adopte dans mon programme. Merci encore à tous. A+ | |
| | | papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
| Sujet: Re: petit problème de combo Lun 10 Déc 2012 - 16:11 | |
| Klaus a toujours une solution à la plupart des problèmes !
!!! MERCI Klaus !!! - Jean Claude a écrit:
- Comment tu as fait Papydall pour trouver un truc pareil, çà demande explication...
C’est que, parfois, je raisonne (et non résonne) d’une façon un peu tordue ! | |
| | | Jean Claude
Nombre de messages : 5950 Age : 70 Localisation : 83 Var Date d'inscription : 07/05/2009
| Sujet: Re: petit problème de combo Lun 10 Déc 2012 - 20:27 | |
| @Bignono, Oui effectivement je me suis planté avec le contenu du presse papier et comme j'ai pas gardé mon essai, c'est perdu.... Je fais le même constat que Cosmos, on ne peut forcer le TEXT de "l'EDIT" du COMBO qu'une seule fois. - Code:
-
dim i,ch label choix combo 1:left 1,100 for i=0 to 15:item_add 1,str$(i):next i text 1,"0" on_change 1,choix
end
choix: ch=val(text$(1)):if ch=10 clear 1:text 1,"Je veux un nouveau texte":' mais je ne l'ai pas for i=0 to 15:item_add 1,str$(i):next i end_if print_locate 10,10:print ch;" " return A+ PS: Cela ne correspond pas à ce qui est dit dans la doc "Un combo est un list et un edit...." | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: petit problème de combo Lun 10 Déc 2012 - 21:16 | |
| Pas tout à fait, Jean-Claude. Tu peux le forcer autant que tu veux, mais JAMAIS dans une routine ON_CHANGE ou ON_CLICK dont le lancement a été provoqué par le MEME combo ! Regarde ce que j'ai fait avec le timer - cela marche autant de fois que tu veux. Et regarde ceci: - Code:
-
dim i%
combo 1 : top 1,10 : left 1,10 for i%=1 to 20 item_add 1,"Ligne "+str$(i%) next i%
for i%=1 to 20 pause 1000 text 1,item_read$(1,i%) next i%
end
| |
| | | Contenu sponsorisé
| Sujet: Re: petit problème de combo | |
| |
| | | | petit problème de combo | |
|
Sujets similaires | |
|
| Permission de ce forum: | Vous ne pouvez pas répondre aux sujets dans ce forum
| |
| |
| |