Gambas France BETA


Pas de compte ? Incription

Dirchooser

Ce sujet est résolu.

1
AuteurMessages
Foromus#1 Posté le 12/11/2016 à 11:56:17
Bonjour les gambassiens,

Petits soucis avec ce composant, et je n'ai pas trouvé une aide sur le site dédié.
En clair :
Quand je lance mon projet, je veux qu'il aille tester si il y a, ou non, un périphérique monté sur "/media/monnom".
Si oui, mettre le nom du média, par exemple, "media_connecte" dans une variable de portée générale, donc, dans un module (je peux donc y accéder de partout via "module.media_connecte").
Ensuite, je vais lire un fichier et récupérer le nom du media déjà enregistré dans un fichier "nom_media_ext" (cette opération d'enregistrement est faite par ailleurs).
Je compare les deux noms, celui enregistré et celui connecté, et j'agis en conséquence.
J'espère avoir été clair dans ma présentation !

Voilà, maintenant, si je reprends mon projet (qui fonctionnait à peu près mais qui coince, allez savoir pourquoi), je remarque que j'utilise :
1
DIM ValMedia AS String[]

C'est bien, je ne suis pas contre...
Au passage, quelle différence entre "String" et "String[]" ? Oui, je sais, des fois on oublie...
Plus loin, je trouve :
1
ValMedia = Dir("/media")

Normal, ça veut dire que mon chooser se place à ce point.
Cela dit, avec xubuntu 16.04, le point de montage des périphériques n'est plus à cet endroit mais un peu plus loin, dans "/media/monnom", comme dit plus haut. Donc, là, il faudrait peut-être que je mette :
1
ValMedia = Dir("/media/monnom")

Non ?
Ensuite, je trouve, dans mon code :
1
FOR N = 0 TO ValMedia.Max

Et là, je me pose des questions : ValMedia étant déclaré en String, comment lui affecter un valeur numérique ?
Donc, là, je voudrais comprendre un peu mieux...

Question subsidiaire :
Quand le truc sera résolu, j'aimerais savoir si il est possible de récupérer l'information de connexion du périphérique externe (clef ou disque), et si oui, je pourrais alors redémarrer le processus du début parce que jusque-là, il fallait que je redémarre le projet pour qu'il prenne en compte le périphérique connecté.

Voilà pour mon petit souci...
Merci de votre indulgence et de votre aide !


vuott#2 Posté le 12/11/2016 à 16:56:10
Ne cedere ineluctabili possimusTchao Foromus,

....

différence entre "String" et "String[]" ?



"String" se réfère aux variables ordinaires de String.
"String[ ] " se réfère aux variables array de String.


il faudrait peut-être que je mette :
1
ValMedia = Dir("/media/monnom")

Non ?


...fais le test ! :bom:



1
FOR N = 0 TO ValMedia.Max

ValMedia étant déclaré en String, comment lui affecter un valeur numérique ?



ValMedia est déclaré comme en String[ ] ( c'est un array !).
Tu dois assigner à son élément une valeur d'origine numérique, opportuamente converti en String:
1
ValMedia[N] = CStr(nombre)




Question subsidiaire :
j'aimerais savoir si il est possible de récupérer l'information de connexion du périphérique externe (clef ou disque), et si oui, je pourrais alors redémarrer le processus du début parce que jusque-là, il fallait que je redémarre le projet pour qu'il prenne en compte le périphérique connecté.



...je suppose :| en utilisant le Composant gb.settings
« Vita non suavis esse potest, nec Mors amara. »
vuott#3 Posté le 12/11/2016 à 16:56:45
Ne cedere ineluctabili possimus :|
« Vita non suavis esse potest, nec Mors amara. »
Foromus#4 Posté le 15/11/2016 à 20:11:23
Bonjour,

Pour String[], c'est une question idiote de ma part, je le savais, je l'ai utilisé, mais ... oublié... Mais il est vrai que je ne m'attendais pas à le trouver là.
Bon, je ne code pratiquement plus, juste quelques mises à jour de temps à autre, je n'ai pas de projet en vue - trop fatigué peut-être.

Bien, pour le moment, j'ai un truc qui coince mais qui pourtant fonctionnait autrefois. Dans un premier temps, j'aimerais trouver une aide (en ligne ou non) concernant filechooser et dirchooser, histoire de me remettre en tête le fonctionnement et voir ce qui coince dans mon projet.
Désolé pour le dérangement...
Merci à vous,

F
1