Forum Liberty Basic France
• Index
Reprise du message précédent
joan74:
Au contraire Joan !!!!
Avec tes 3 functions tu recherches le chemin complet depuis la racine de chaque fichier, alors que DefaultDir$ le contient déjà par défaut ! c'est JB lui-même qui la remplie pour toi.
Essaye le bout de code que je t'ai écrit tu verras que ça fonctionne très bien !
Regarde le bien, tu verras que DefaultDir$ est le premier paramètre de la commande Files.....
J'ai dit que DefaultDir$ contient le chemin du répertoire (donc qui contient "\" à la fin) à partir duquel tu lances le fichier programme (.bas)
Donc si tu as stocké des fichiers dans un sous-répertoire il te faut l'écrire dans ta variable Fichier$ : c'est ce que j'ai fait.
Files va donc additionner les 2 chaines DefaultDir$ + ta variable Fichier$ ce qui donnera le chemin complet du fichier en question depuis la racine.
Tu peux aussi t'écrire cette petite function que tu peux utiliser dans tous tes programmes, à partir du moment où tous les fichiers utilisés se trouvent dans le répertoire d'où le programme sera lançé (ou dans un sous répertoire) :
Code VB :qui renverra 0 si le fichier n'existe pas.
joan74:
Dans une certaine mesure je suis entièrement d'accord avec toi.
Mais préférer écrire 50 lignes d'affectation de variable tableau plutôt que 8 lignes qui font la même chose sans complications particulières, ça c'est du masochisme
Moi je suis plutôt fainéant, donc je trouve des astuces
C'est comme la grande quantité de if imbriqués ou à répétition pour extraire un n° de case à partir de X,Y ou inversement !!!
Une ou 2 lignes de calcul simple ferait la même chose
Vivement que tu trouves de jolis SPRITES PLUS GROS !
@+
PS: Roland, si tu lançes loadbmp sur un fichier qui n'existe pas tu verras ce qu'il se passe
Edité par cassiope01 Le 18/05/2012 à 06h02
joan74:
Là, J'ai du mal à comprendre ! 'DefaultDir$' ne servirait donc à rien ?
Au contraire Joan !!!!
Avec tes 3 functions tu recherches le chemin complet depuis la racine de chaque fichier, alors que DefaultDir$ le contient déjà par défaut ! c'est JB lui-même qui la remplie pour toi.
Essaye le bout de code que je t'ai écrit tu verras que ça fonctionne très bien !
Regarde le bien, tu verras que DefaultDir$ est le premier paramètre de la commande Files.....
J'ai dit que DefaultDir$ contient le chemin du répertoire (donc qui contient "\" à la fin) à partir duquel tu lances le fichier programme (.bas)
Donc si tu as stocké des fichiers dans un sous-répertoire il te faut l'écrire dans ta variable Fichier$ : c'est ce que j'ai fait.
Files va donc additionner les 2 chaines DefaultDir$ + ta variable Fichier$ ce qui donnera le chemin complet du fichier en question depuis la racine.
Tu peux aussi t'écrire cette petite function que tu peux utiliser dans tous tes programmes, à partir du moment où tous les fichiers utilisés se trouvent dans le répertoire d'où le programme sera lançé (ou dans un sous répertoire) :
Code VB :
function fileExists(filename$) 'DIM info$(10,10) 'doit avoir été déclaré au debut du programme files DefaultDir$, filename$, info$() fileExists = val(info$(0, 0)) '<> 0 si vrai end function
joan74:
Je préfére une meilleure comprenhension, qu'un code condensé que j'aurais du mal à reprendre...
Dans une certaine mesure je suis entièrement d'accord avec toi.
Mais préférer écrire 50 lignes d'affectation de variable tableau plutôt que 8 lignes qui font la même chose sans complications particulières, ça c'est du masochisme


Moi je suis plutôt fainéant, donc je trouve des astuces

C'est comme la grande quantité de if imbriqués ou à répétition pour extraire un n° de case à partir de X,Y ou inversement !!!
Une ou 2 lignes de calcul simple ferait la même chose

Vivement que tu trouves de jolis SPRITES PLUS GROS !

@+
PS: Roland, si tu lançes loadbmp sur un fichier qui n'existe pas tu verras ce qu'il se passe



Edité par cassiope01 Le 18/05/2012 à 06h02
____________________
Devise Shadocks : "Mieux vaut mobiliser son intelligence pour des conneries, que mobiliser sa connerie pour des choses intelligentes"
Coluche disait : "C'est parce que la vitesse de la lumière est plus rapide que celle du son que certains peuvent paraîtrent brillants jusqu'à ce qu'ils ouvrent la bouche."
Devise Shadocks : "Mieux vaut mobiliser son intelligence pour des conneries, que mobiliser sa connerie pour des choses intelligentes"
Coluche disait : "C'est parce que la vitesse de la lumière est plus rapide que celle du son que certains peuvent paraîtrent brillants jusqu'à ce qu'ils ouvrent la bouche."
Web
Heu..., je voudrais pas etre insolent, mais on pourrais aussi faire une procédure pour vérifier qu'il y a bien un système d'exploitation dans le PC....on sait jamais.
Cette procédure de recherche et vérif de présence, c'est bon pour les" install's" qui balancent des fichiers un peu partout. Ce n'est pas le cas de nos prog's où tout est dans un seul dossier.(ce qui est quand meme plus sympa)....

Cette procédure de recherche et vérif de présence, c'est bon pour les" install's" qui balancent des fichiers un peu partout. Ce n'est pas le cas de nos prog's où tout est dans un seul dossier.(ce qui est quand meme plus sympa)....

____________________
Roro
Roro
Ca y est, j'ai trouvé Joan !
Je suis content d'avoir réussi, mais je sais pas si tu vas l'être aussi !
En tout cas ça fonctionne très bien
Il te faut lire les commentaires pour comprendre le calcul...
Voici les 2 functions NumCaseToDamierX(Num) et NumCaseToDamierY(NumCase) :
Code VB :
Edité par cassiope01 Le 19/05/2012 à 10h28
Je suis content d'avoir réussi, mais je sais pas si tu vas l'être aussi !


En tout cas ça fonctionne très bien

Il te faut lire les commentaires pour comprendre le calcul...
Voici les 2 functions NumCaseToDamierX(Num) et NumCaseToDamierY(NumCase) :
Code VB :
'2012 function NumCaseToDamierX(Num) if Num<0 or Num>50 then notice "ERROR 1 Function : NumCaseToDamierX(Num)" exit function end if nY = NumCaseToDamierY(Num) ' obtention du Y NumCaseToDamierX = 2*(Num-(nY-1)*5) - 1*(nY mod 2 = 0) ' mod = reste de la division du premier chiffre par le deuxième. ' sachant que (nY mod 2 = 0) retourne 1 si c'est vrai ou 0 si c'est faux. end function '2012 function NumCaseToDamierY(NumCase) if NumCase < 0 or NumCase > 50 then notice "ERROR 1 Function : NumCaseToDamierY(NumCase)" exit function end if NumCaseToDamierY = int(NumCase/5) + 1*(NumCase mod 5 > 0) ' mod = reste de la division du premier chiffre par le deuxième. ' sachant que (NumCase mod 5 > 0) retourne 1 si c'est vrai ou 0 si c'est faux. end function
Edité par cassiope01 Le 19/05/2012 à 10h28
____________________
Devise Shadocks : "Mieux vaut mobiliser son intelligence pour des conneries, que mobiliser sa connerie pour des choses intelligentes"
Coluche disait : "C'est parce que la vitesse de la lumière est plus rapide que celle du son que certains peuvent paraîtrent brillants jusqu'à ce qu'ils ouvrent la bouche."
Devise Shadocks : "Mieux vaut mobiliser son intelligence pour des conneries, que mobiliser sa connerie pour des choses intelligentes"
Coluche disait : "C'est parce que la vitesse de la lumière est plus rapide que celle du son que certains peuvent paraîtrent brillants jusqu'à ce qu'ils ouvrent la bouche."
Web
Quelques mots sur statictext : il fait un retour à la ligne tout seul, si la chaine qu'il doit contenir est plus longue que sa largeur déclarée, et si sa hauteur déclarée lui permet.
Ceci dit on peut aussi lui faire faire un retour à la ligne avec un chr$(13), et s'assurer aussi que sa hauteur le permet.
Voici ce que ça peut donner dans ta SUB AfficherFenetreAbout JustDamesVersion$ :
- space$(n) = n fois " " (espaces)
Code VB :
@+
Edité par cassiope01 Le 18/05/2012 à 12h52
Ceci dit on peut aussi lui faire faire un retour à la ligne avec un chr$(13), et s'assurer aussi que sa hauteur le permet.
Voici ce que ça peut donner dans ta SUB AfficherFenetreAbout JustDamesVersion$ :
- space$(n) = n fois " " (espaces)
Code VB :
sub AfficherFenetreAbout JustDamesVersion$ '1-Création de la fenetre 'A propos de...' : '------------------------------------------ text1$ = space$(3);"JustDames - ";JustDamesVersion$ text2$ = space$(22);"Freeware" text3$ = space$(18);"2012 - joan74" text4$ = space$(16);"www.justbasic.com" text5$ = "http://libertybasic.fr/forum/index.php" WindowWidth = 260 WindowHeight = 185 UpperLeftX = (DisplayWidth - WindowWidth) / 2 UpperLeftY = (DisplayHeight - WindowHeight) / 3 Larg=210 statictext #FenetreAbout.Txt1, text1$;chr$(13);text2$;chr$(13);text3$;chr$(13);text4$;chr$(13);text5$, (WindowWidth-Larg)/2, 15, Larg, 100 button #FenetreAbout.BouttonOK, "OK", [QuitterFenetreAbout], ul, (WindowWidth-100) /2, 120, 100, 25 'UL,x,y,L,H open "A propos de..." for dialog_modal as #FenetreAbout #FenetreAbout, "trapclose [QuitterFenetreAbout]" #FenetreAbout.Txt1, "!font Arial 9" '2-Donne le 'focus' à l'un des controles : '----------------------------------------- #FenetreAbout.BouttonOK, "!setfocus" wait [QuitterFenetreAbout] close #FenetreAbout end sub
@+
Edité par cassiope01 Le 18/05/2012 à 12h52
____________________
Devise Shadocks : "Mieux vaut mobiliser son intelligence pour des conneries, que mobiliser sa connerie pour des choses intelligentes"
Coluche disait : "C'est parce que la vitesse de la lumière est plus rapide que celle du son que certains peuvent paraîtrent brillants jusqu'à ce qu'ils ouvrent la bouche."
Devise Shadocks : "Mieux vaut mobiliser son intelligence pour des conneries, que mobiliser sa connerie pour des choses intelligentes"
Coluche disait : "C'est parce que la vitesse de la lumière est plus rapide que celle du son que certains peuvent paraîtrent brillants jusqu'à ce qu'ils ouvrent la bouche."
Web
salut,
de passage juste pour donner des nouvelles du projet pour ceux que cela interressent (s'il y'en a
)
Depuis pls mois je suis sur un autre projet bcp plus prioritaire pour moi et qui prend le peu de temps libre que j'ai
(rien à voir avec la programmation en passant !)
.. donc pas de nouvelles versions à proposer pour l'instant... du moins pour 2012 en tout cas !
@+

de passage juste pour donner des nouvelles du projet pour ceux que cela interressent (s'il y'en a

Depuis pls mois je suis sur un autre projet bcp plus prioritaire pour moi et qui prend le peu de temps libre que j'ai

.. donc pas de nouvelles versions à proposer pour l'instant... du moins pour 2012 en tout cas !
@+
____________________
"L'urgent c'est fait ! L'impossible est en cours... pour les miracles, merci de prévoir un délai supplémentaire !"
"L'urgent c'est fait ! L'impossible est en cours... pour les miracles, merci de prévoir un délai supplémentaire !"
Eh ben mieux vaut tard que jamais
, salut joan
c'est sympa de venir faire un petit tour par ici.
A l'an prochain alors
Edité par cassiope01 Le 26/11/2012 à 18h23


c'est sympa de venir faire un petit tour par ici.
A l'an prochain alors

Edité par cassiope01 Le 26/11/2012 à 18h23
____________________
Devise Shadocks : "Mieux vaut mobiliser son intelligence pour des conneries, que mobiliser sa connerie pour des choses intelligentes"
Coluche disait : "C'est parce que la vitesse de la lumière est plus rapide que celle du son que certains peuvent paraîtrent brillants jusqu'à ce qu'ils ouvrent la bouche."
Devise Shadocks : "Mieux vaut mobiliser son intelligence pour des conneries, que mobiliser sa connerie pour des choses intelligentes"
Coluche disait : "C'est parce que la vitesse de la lumière est plus rapide que celle du son que certains peuvent paraîtrent brillants jusqu'à ce qu'ils ouvrent la bouche."
Web
Flood.fr -->Larsen
____________________
Roro
Roro
• Index
1 Utilisateur en ligne : 0 Administrateur, 0 Modérateur, 0 Membre et 1 Visiteur
Utilisateur en ligne : Aucun membre connecté
Utilisateur en ligne : Aucun membre connecté
Répondre
Vous n'êtes pas autorisé à écrire dans cette catégorie