Bonjour
Je cherche sans succès s'il est possible de sauvegarder une collection d'objets sur un fichier de manière à pouvoir recharger ces objets dans l'état au prochain lancement du programme.
Merci d'avance pour vos réponse.
Bonjour
Je cherche sans succès s'il est possible de sauvegarder une collection d'objets sur un fichier de manière à pouvoir recharger ces objets dans l'état au prochain lancement du programme.
Merci d'avance pour vos réponse.
Tout dépend de si les objets sont les mêmes à priori ssi tu parles de collection cela voudrait dire qu'ils sont du même type (ex tous des textbox)
Il te suffit de créer un type perso qui reprend toues les propriétés disponibles du controle
Type Moncontrole
CtrlName
CtlrTop
CtrlLeft
CtrlHeight
CtrlWidth
'....
end type
(ils ne sont pas dans l'ordre je ne le connais pas par coeur)
Tu n'est pas obligé de mettre toutes les propriétés, mais uniquement celles que tu veux sauvegarder
ensuite il ne te reste plus qu'a sauvegarder une collection:
Dim MESControles() as moncontrole
tu colles dans MEScontroles(i) les propriétés :
Mescontroles(i).top = ????
Puis tu sauvegardes le résultat dans un fichier texte ....
Ce que tu veux faire, Sayagh, ça s'appelle la sérialisation et en VB il faut tout programmer : tu ajoutes à la classe une méthode Serialize() qui renvoie l'ensemble des valeurs des propriétés juxtaposées.
Spacefrog, un objet c'est pas forcément un contrôle dans une form. Il peut être aussi créé à partir d'une classe que tu as écrite.
Oki Night mais qui qu'il en soit pour restituer l'objet, tu es bien obligé d'en sauvegarder les propriétés ... ?
Bonjour,
Un peu décevant comme solution, mais il faut faire avec...
Effectivement il s'agit d'une collection d'objets perso.
Si j'ai bien compris, Nightfall, la méthode serialize() se trouve dans la classe collection?
en tous les cas merci à tous les deux pour votre aide.
Non d'abord dans la classe de l'objet. Et après si tu veux dans la collection. Dans la collection tu parcoures les objets et appelles pour chaque objet la méthode serialize() et ajoutes dans le fichier ce qu'elle te renvoie.Envoyé par Sayagh
Merci pour tout sympathique et rapide , je vais faire ça.
Votre forum est vraiment super, comme l'ensemble du site.
J'aurai bien voulu indiquer que le sujet est résolu mais j'ai un problème pour trouver le bouton indiqué.
cordialement
En bas à gauche de cette page.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager