Enregistrer les valeurs d'un formulaire

Résolu
cs_Sp00ky
Messages postés
112
Date d'inscription
vendredi 21 janvier 2005
Statut
Membre
Dernière intervention
20 novembre 2006
- 3 mars 2005 à 22:16
cs_ITALIA
Messages postés
2169
Date d'inscription
vendredi 20 avril 2001
Statut
Membre
Dernière intervention
30 juin 2009
- 10 mars 2005 à 17:14
Bonsoir,

Je voudrais savoir comment faire pour enregistrer les données d'un formulaire Visual Basic pour qu'à la prochaine execution du programme, si l'utilisateur a cocher la case pour sauver ses parametres, il retrouve les valeurs qu'il avait mises dans les champs, lors de la précédente exécution.

Merci d'avance !

@+

11 réponses

cs_ITALIA
Messages postés
2169
Date d'inscription
vendredi 20 avril 2001
Statut
Membre
Dernière intervention
30 juin 2009
9
7 mars 2005 à 07:57
Pour Lire et Ecrire dans un INI , dans mon cas il se trouve à coté de l'EXE et se nomme Param.ini:

Dans un Module :

Private Declare Function GetPrivateProfileString Lib "kernel32" Alias "GetPrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As Any, ByVal lpDefault As String, ByVal lpReturnedString As String, ByVal nSize As Long, ByVal lpFileName As String) As Long
Private Declare Function WritePrivateProfileString Lib "kernel32" Alias "WritePrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As Any, ByVal lpString As Any, ByVal lpFileName As String) As Long

Function LireINI(Entete As String, Variable As String) As String
Dim Retour As String
Fichier = App.Path & "" & "Param.ini"
Retour = String(255, Chr(0))
LireINI = Left$(Retour, GetPrivateProfileString(Entete, ByVal Variable, "", Retour, Len(Retour), Fichier))
End Function


Function EcrireINI(Entete As String, Variable As String, Valeur As String) As String
Fichier = App.Path & "" & "Param.ini"
WriteINI = WritePrivateProfileString(Entete, Variable, Valeur, Fichier)
End Function

Dans Ta Form :
Pour Recupérer une Valeur :
TaValeur = LireINI("NomSection", "NomConstante")

Pour Ecrire une Valeur :
Call EcrireINI("NomSection", "NomConstante", Text1.Text)

It@li@
3
crenaud76
Messages postés
4172
Date d'inscription
mercredi 30 juillet 2003
Statut
Membre
Dernière intervention
9 juin 2006
28
3 mars 2005 à 23:07
Il faut sauvegarder tes données dans un fichier texte ou dans le registre par exemple (plus simple en fichier) avant de fermer le formulaire et recharger les datas depuis le fihcier ou la registry à la réouverture de la feuille

Christophe R
0
valtrase
Messages postés
937
Date d'inscription
lundi 19 janvier 2004
Statut
Membre
Dernière intervention
9 mai 2022
4
4 mars 2005 à 00:42
Salut,
Tiens va voir ici jutilise un ini pour sauvegarder des Valeurs
http://www.vbfrance.com/ajoutcode.aspx?ID=29894

Cordialement, Jean-Paul
______________________________________________________________________

Le Savoir n'a de valeur que s'il est partagé
0
cs_ITALIA
Messages postés
2169
Date d'inscription
vendredi 20 avril 2001
Statut
Membre
Dernière intervention
30 juin 2009
9
4 mars 2005 à 08:37
Effectivement les INI c'est le plus approprié..à mon avis

It@li@
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_Sp00ky
Messages postés
112
Date d'inscription
vendredi 21 janvier 2005
Statut
Membre
Dernière intervention
20 novembre 2006
1
5 mars 2005 à 19:13
Euh merci pour la méthode des .ini, je veux bien essayer, mais ton lien ne mène à rien crenaud76.

Aurais-tu un lien pour que je puisse voir comment faire ?

Merci d'avance.
@+
0
valtrase
Messages postés
937
Date d'inscription
lundi 19 janvier 2004
Statut
Membre
Dernière intervention
9 mai 2022
4
5 mars 2005 à 20:02
Re,
C'est moi qui délire, désolé
http://www.vbfrance.com/code.aspx?id=29894

Cordialement, Jean-Paul
______________________________________________________________________

Le Savoir n'a de valeur que s'il est partagé
0
cs_Sp00ky
Messages postés
112
Date d'inscription
vendredi 21 janvier 2005
Statut
Membre
Dernière intervention
20 novembre 2006
1
5 mars 2005 à 21:43
Ok, merci

J'ai regardé ton code, et j'ai tenté de faire un .ini
Mais je ne comprends pas très bien comment faire.

Au chargement de mon form, j'ai ajouté cette ligne :
Text1 = GetSetting(App.EXEName, "Form1", Text1, "Username")

Et quand on appuit sur le bouton j'ai rajouté cette ligne :
SaveSetting App.EXEName, "Form1", "Text1", Text1

Mais aucun .ini ne se cré, et ca charge toujours la valeur par défaut : Username

Merci de m'expliquer le fonctionnement du .ini (je débute vraiment ...)

@ bientôt
0
valtrase
Messages postés
937
Date d'inscription
lundi 19 janvier 2004
Statut
Membre
Dernière intervention
9 mai 2022
4
7 mars 2005 à 11:07
Salut,
Faut que tu rajoutes le module ModSub de mon projet à ton projet pour qu'il fonctionne
copie le dans le dossier de ton appli avant de le rajouter dans vb6

Cordialement, Jean-Paul
______________________________________________________________________

Le Savoir n'a de valeur que s'il est partagé
0
valtrase
Messages postés
937
Date d'inscription
lundi 19 janvier 2004
Statut
Membre
Dernière intervention
9 mai 2022
4
7 mars 2005 à 11:21
Re,
En fait si tu ne rajoutes pas le module tu n'interceptes pas les fonctions get et save setting et de ce fait tu écriras dans la base de registre. Dans la mesure ou tu est sous XP
Si tu veux écrire soit dans ta base de registre soit dans un INI applique la méthode à Italia qui est la même sauf que l'appel se fait avec LireIni et EcrireIni donc pas d'enbiguitée.
Il faut savoir quand même que la base de registre et là pour ça donc autant l'utiliser

Cordialement, Jean-Paul
______________________________________________________________________

Le Savoir n'a de valeur que s'il est partagé
0
cs_Sp00ky
Messages postés
112
Date d'inscription
vendredi 21 janvier 2005
Statut
Membre
Dernière intervention
20 novembre 2006
1
10 mars 2005 à 16:52
Merci énormément, ca marche parfaitement !

Juste pour info pour ceux que ca interesserait, avec le code d'Italia c'est parfait, il faut juste rajouter ces deux petites lignes a deux endroits :
Dim Fichier As String
Dim WriteINI As String

Sinon ces variables ne sont jamais annoncées ..
A part ca perfecto !

Grazie Mille Italia e valtrase !


.:: KoC-FR ::. Alliance Francophone Kings of Chaos
Venez jouer au meilleur MMORPG gratuit et facile !
0
cs_ITALIA
Messages postés
2169
Date d'inscription
vendredi 20 avril 2001
Statut
Membre
Dernière intervention
30 juin 2009
9
10 mars 2005 à 17:14
Parceque tu dois être en Mode Explicit !

FORZZZZZA ITALIA
FORZZZZZA JUVE

It@li@
0