| Comment faire: if label(r3$)=1 then resultat=r3$ ? | |
|
|
Auteur | Message |
---|
Jean Claude
Nombre de messages : 5950 Age : 70 Localisation : 83 Var Date d'inscription : 07/05/2009
| Sujet: Comment faire: if label(r3$)=1 then resultat=r3$ ? Ven 23 Mar 2012 - 8:52 | |
| Comme vous pouvez le voir dans le titre "if label(r3$)=1 then resultat=r3$", ce qui est écrit est une grossière erreur de syntaxe vu que resultat n'est pas une variable string ($). Je cherche, mais je ne trouve pas la solution, pour enlever les guillemets de r3$ (genre resultat=r3$ sans les guillemets) pour pouvoir ensuite lancer un GOSUB resultat. J'ai trouvé TRIM$(), qui enlève les blancs, mais rien pour les guillemets. Et je ne vois pas comment convertir un string ($) en réel. Tout çà pour m'éviter d'écrire dans le code: " if r3$="tuto01" then gosub tuto01 " à chaque fois que j'aurais ajouté un nouveau tuto dans le fichier aide. Si un Panoramicien à une idée, je suis preneur.... A+ | |
|
| |
Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Comment faire: if label(r3$)=1 then resultat=r3$ ? Ven 23 Mar 2012 - 13:20 | |
| Ce que tu demandes, est tout simplement impossible en Panoramic. Tu ne peux pas transformer un label et valeur numérique, ni même le nom d'un label. Tu ne peux pas non plus faire un GOTO ou GOSUB avec la destination dans une variable, fût-ce dans une variable string. Ta solution de rechange est la bonne, ou alors tu utilises un code numérique pour désigner tes tutos, et tu utilises un SELECT/CASE/END_SELECT pour dispatcher, comme suit: - Code:
-
num_tuto% = 17 ... select num_tuto% ... case 17: gosub tuto17 ... end_select
| |
|
| |
Jean Claude
Nombre de messages : 5950 Age : 70 Localisation : 83 Var Date d'inscription : 07/05/2009
| Sujet: Re: Comment faire: if label(r3$)=1 then resultat=r3$ ? Ven 23 Mar 2012 - 13:47 | |
| Merci Klaus pour ta réponse qui ne me surprend pas. J'avais conscience de demander un truc impossible, mais je me suis dit "on ne sait jamais, parmi les extra-terrestre de Panoramic.... ". Pour mes tutos, ce n'est pas un code numérique mais ta proposition est à étudier.... En tout cas Merci, A+ | |
|
| |
Jack Admin
Nombre de messages : 2394 Date d'inscription : 28/05/2007
| Sujet: Re: Comment faire: if label(r3$)=1 then resultat=r3$ ? Ven 23 Mar 2012 - 13:49 | |
| Tout à fait. Par contre pour ta demande: - Citation :
- je ne vois pas comment convertir un string ($) en réel.
Il y a VAL qui convertit un string en réel. La preuve, essaye print val("123.456") et tu obtiens 123.456 | |
|
| |
Jicehel
Nombre de messages : 5947 Age : 52 Localisation : 77500 Date d'inscription : 18/04/2011
| Sujet: Re: Comment faire: if label(r3$)=1 then resultat=r3$ ? Ven 23 Mar 2012 - 13:53 | |
| Si tu veux travailler sur une valeur numérique depuis ta chaine, tu peux te faire une simple num_tuto%=val(right$(r3$,2)), tu auras la valeur de la chaine composée des 2 chiffres de droite de r$$. Après, tu peux faire le select num_tuto% indiqué par Klaus (en supposant bien que la valeur de droite corresponde bien toujours à une valeur unique codé sur 2 caractères bien sûr, mais bon il faudrait conniaitre le programme pour plus d'assistance)
| |
|
| |
Jean Claude
Nombre de messages : 5950 Age : 70 Localisation : 83 Var Date d'inscription : 07/05/2009
| Sujet: Re: Comment faire: if label(r3$)=1 then resultat=r3$ ? Ven 23 Mar 2012 - 13:56 | |
| OUI Jack, j'utilise VAL très souvent, mais il y a une condition, il faut que le string soit numérique. - Code:
-
dim a$ a$="Jean" print val(a$)
Ce qui ne répond pas à ce que je souhaite faire. Merci de ton intervention. A+ EDIT: @Jicehel, on s'est croisé, ta proposition est celle de Klaus et je pense que c'est la solution. Merci. | |
|
| |
Jean Claude
Nombre de messages : 5950 Age : 70 Localisation : 83 Var Date d'inscription : 07/05/2009
| Sujet: Re: Comment faire: if label(r3$)=1 then resultat=r3$ ? Ven 23 Mar 2012 - 14:17 | |
| Jicehel à dit: - Citation :
- mais bon il faudrait conniaitre le programme pour plus d'assistance
çà va bientôt arriver, je travaille actuellement sur les tutos, et je ne souhaite pas vous livrer le logiciel avant qu'il n'y ai le minimum de tutos, pour que vous puissiez en profiter pleinement. J'ai une version qui fonctionne et à laquelle j'ai fait subir un maximum de test, mais c'est long car il faut sans cesse que je redémarre mon truc de zéro pour vérifier que tout fonctionne bien. C'est une application qui génère des fichiers au fur et à mesure de l'avancement dans le logiciel. J’espère sortir çà en avril au plus tard. (pourtant çà me démange de le faire maintenant....). A+ | |
|
| |
Jicehel
Nombre de messages : 5947 Age : 52 Localisation : 77500 Date d'inscription : 18/04/2011
| Sujet: Re: Comment faire: if label(r3$)=1 then resultat=r3$ ? Ven 23 Mar 2012 - 14:50 | |
| Ne t'inquiète pas et fait au mieux. Tu peux toujours nous appâter avec une version non finalisée au niveau contenu pour qu'on en teste des bouts si tu veux (un peu à la Bignono) Ca peut éviter parfois d'avoir à faire des grosses modifs quand tout est bouclé, mais bon, ça c'est un point de vu. L'envie de livrer un truc testé et complet se justifie aussi. En tout cas bon courage pour le finir
Dernière édition par Jicehel le Ven 23 Mar 2012 - 22:07, édité 1 fois | |
|
| |
Jean Claude
Nombre de messages : 5950 Age : 70 Localisation : 83 Var Date d'inscription : 07/05/2009
| Sujet: Re: Comment faire: if label(r3$)=1 then resultat=r3$ ? Ven 23 Mar 2012 - 21:18 | |
| @Jicehel, Tu me mets l'eau à la bouche, j'ai bossé toute l'après-midi sur un scénario pour tester le logiciel et çà avance. J'ai décidé (par ta faute ) de vous mettre une version en teste, je pense sous quelque jours. A+ | |
|
| |
Contenu sponsorisé
| Sujet: Re: Comment faire: if label(r3$)=1 then resultat=r3$ ? | |
| |
|
| |
| Comment faire: if label(r3$)=1 then resultat=r3$ ? | |
|