Forum Liberty Basic France

Le 30/06/2020 à 16h12

Libertynaute Actif

Groupe: Membre

Inscrit le: 17/12/2010
Messages: 124
Slt,

Je souhaite faire fonctionner la Fonction N° 2, mais j'y arrive pas :/

Code VBA :
 
'exemple tab
dim tab0(12)
dim tab1(12)
dim tab2(12)
 
'exemple init
tab0(6) = 0
tab1(6) = 11
tab2(6) = 22
'[...]
 
'---test 1
print selectTabV1(2)    'on souhaite utiliser le tableau N°2
 
'---test 2
print selectTabV2(2)    'on souhaite utiliser le tableau N°2
 
wait
 
'---------------------------------
function selectTabV1(x)
'cette fonction fonctionne bien !
 
    select case x
     case 0
        selectTabV1 = tab0(6)
     case 1
        selectTabV1 = tab1(6)
     case 2
        selectTabV1 = tab2(6)
    end select
 
end function
 
'---------------------------------
function selectTabV2(x)
'ici je souhaite utiliser la variable 'x' pour sélectionner mon tableau
'MAIS j'y arrive pô^^^^
 
        selectTabV2 = "tab";chr(x);"(";6;")"
 
end function
 
 
____________________
"L'urgent c'est fait ! L'impossible est en cours... pour les miracles, merci de prévoir un délai supplémentaire !"

   
Le 25/07/2020 à 11h46

Modérateur

Groupe: Modérateur

Inscrit le: 09/02/2015
Messages: 741
Bonjour tout le monde, c'est un revenant !

Je regarde dans le courant de l'après-midi, et il y a un petit détail qui cloche, mais il faut que je me replonge dans la technique pour me souvenir.

A plus tard
____________________
Just BASIC v2.0 :
  • utilisation courante avec GNU/Linux Mageia7+ Wine (Pas trouvé d'incohérences ou de bug de compilation à ce jour)
  • utilisation occasionnelle ou vérification/débugage difficile avec Windows XP sur un petit eeepc

   
Le 25/07/2020 à 12h09

Libertynaute Actif

Groupe: Membre

Inscrit le: 17/12/2010
Messages: 124
J'ai posé la question sur le forum anglophone.
https://justbasiccom.proboards.com/thread/524/make-call-tab-variable

La réponse là-bas est, en JustBasic on ne peut pas.
En Liberty en revanche il y a ceci avec EVAL :
Code VBA :
 selectTabV2 = eval("tab";str$(x);"(6)") 


Ceci dit, j'ai déjà résolu mon problème autrement ;)



Edité par joan74 Le 25/07/2020 à 13h01
____________________
"L'urgent c'est fait ! L'impossible est en cours... pour les miracles, merci de prévoir un délai supplémentaire !"

   
Le 25/07/2020 à 20h01

Modérateur

Groupe: Modérateur

Inscrit le: 09/02/2015
Messages: 741
C'est le gros avantage du langage de programmation, on peut tenter autant d'approches que désiré.

Mais à moins de ne pas avoir compris ce que tu voulais faire, j'ai modifié ta fonction selectTabV2 en selectTabV2$ et rectifié un chr$ en str$, et quoi qu'en disent nos amis d'outre-Manche, ça semble fonctionner en JB, qu'en dis-tu ?

Code VB :
 
'exemple tab
dim tab0(12)
dim tab1(12)
dim tab2(12)
 
'exemple init
tab0(6) = 0
tab1(6) = 11
tab2(6) = 22
'[...]

'---test 1
choix=2	'choix du tableau
print selectTabV1(choix)    'on souhaite utiliser le tableau N°2

'---test 2
print selectTabV2$(choix)    'on souhaite utiliser le tableau N°2

wait
 
'---------------------------------
function selectTabV1(x)
'cette fonction fonctionne bien !

    select case x
     case 0
        selectTabV1 = tab0(6)
     case 1
        selectTabV1 = tab1(6)
     case 2
        selectTabV1 = tab2(6)
    end select
 
end function
 
'---------------------------------
function selectTabV2$(x)
'ici je souhaite utiliser la variable 'x' pour sélectionner mon tableau
'MAIS j'y arrive pô^^^^

        selectTabV2$ = "tab";str$(x);"(";6;")"
 
end function
 
____________________
Just BASIC v2.0 :
  • utilisation courante avec GNU/Linux Mageia7+ Wine (Pas trouvé d'incohérences ou de bug de compilation à ce jour)
  • utilisation occasionnelle ou vérification/débugage difficile avec Windows XP sur un petit eeepc

   
Le 27/07/2020 à 16h56

Libertynaute Actif

Groupe: Membre

Inscrit le: 17/12/2010
Messages: 124
@Christophe
Ta fonction renvoie une chaine...
moi ce que je voudrais, c'est pouvoir récupérer l'information contenu dans le tableau auquel il est fait référence.
Merci de ton aide.
____________________
"L'urgent c'est fait ! L'impossible est en cours... pour les miracles, merci de prévoir un délai supplémentaire !"

   
Le 27/07/2020 à 18h45

Administrateur

Groupe: Administrateur

Inscrit le: 04/03/2012
Messages: 2484
Tu pourrais utiliser un tableau de transfert provisoire avec ta première fonction.
T1 ou T2 ou T3 transféré dans Tprov et Tprov traité par la fonction.
____________________
Roro

   
Le 27/07/2020 à 21h58

Modérateur

Groupe: Modérateur

Inscrit le: 30/03/2011
Messages: 436
hum je sais pas si ca peut aider mais il me semble que dans mon jeu PIXEL aventure j'utilise cela. J'ai un tableau initial de charger et et charge a volonté d'autres tableau en fonction des besoin (passage de niveau ici).
____________________
Yo !

MSN Web    
Le 28/07/2020 à 11h44

Administrateur

Groupe: Administrateur

Inscrit le: 04/03/2012
Messages: 2484
Citation:
il me semble que dans mon jeu PIXEL aventure j'utilise cela.

Un lien serait bienvenu.
____________________
Roro

   
Le 28/07/2020 à 17h36

Modérateur

Groupe: Modérateur

Inscrit le: 30/03/2011
Messages: 436
Je suis sur tel :P

ICI LE LIEN ^^



Edité par atomose Le 28/07/2020 à 17h37
____________________
Yo !

MSN Web    

 |  |

1 Utilisateur en ligne : 0 Administrateur, 0 Modérateur, 0 Membre et 1 Visiteur
Utilisateur en ligne : Aucun membre connecté
Répondre
Vous n'êtes pas autorisé à écrire dans cette catégorie