ENREGISTRER ET APPLIQUER LES PARAMÈTRES D'UNE FORM EN 2 LIGNES [CTL]

econs Messages postés 4030 Date d'inscription mardi 13 mai 2003 Statut Membre Dernière intervention 23 décembre 2008 - 10 févr. 2006 à 09:53
romainvv Messages postés 46 Date d'inscription lundi 19 mars 2007 Statut Membre Dernière intervention 22 mai 2009 - 22 mars 2007 à 17:34
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/35970-enregistrer-et-appliquer-les-parametres-d-une-form-en-2-lignes-ctl

romainvv Messages postés 46 Date d'inscription lundi 19 mars 2007 Statut Membre Dernière intervention 22 mai 2009
22 mars 2007 à 17:34
Escusez moi pour la 1ere question elle est ridicule
romainvv Messages postés 46 Date d'inscription lundi 19 mars 2007 Statut Membre Dernière intervention 22 mai 2009
21 mars 2007 à 21:35
Est ce que Visual Basic 6 est téléchargable gatuitement ?
c'est quoi .ctl ?
MErci
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
21 mars 2007 à 17:57
regarde dans les outils de conversion fournis par microsoft, tu pourra peut-être récupérer le .ctl en .vb (il y aura tout de même forcément des adaptations à faire).

possible aussi que le framework contienne déjà ce genre de paramétrage...
romainvv Messages postés 46 Date d'inscription lundi 19 mars 2007 Statut Membre Dernière intervention 22 mai 2009
21 mars 2007 à 16:17
n'y a-il pas une alternative à 'Af_cis' en vb 2005 ?
J'ai cherché mais j'ai pas trouvé !
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
21 mars 2007 à 15:08
ce code est du Visual Basic 6....
romainvv Messages postés 46 Date d'inscription lundi 19 mars 2007 Statut Membre Dernière intervention 22 mai 2009
21 mars 2007 à 13:42
je dois avoir l'ai un peu *** mais j'ai une èrreur : Erreur Le nom 'Af_Cis' n'est pas déclaré. Je tourne sur Microsoft Visual Basic 2005. Qq'un a-il une solution ?
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
8 juin 2006 à 16:40
salut,
en déclaration il faudra ajouter un item au type 'tControlsInformations' (tBackColor as string)
et dans les tests TypeOf oCtrl is Command, là tu lis et/ou écris cette nouvelle propriété...
rgarant Messages postés 2 Date d'inscription jeudi 30 décembre 2004 Statut Membre Dernière intervention 8 juin 2006
8 juin 2006 à 16:08
Bonjour !
Je suis débutant et j'aimerais comprendre quelque chose ... Comment peut-on récupérer la propriété BackColor de tous les
boutons contenus sur une feuille dans un fichier ini ? Ton code semble très bien mais je suis un peu trop débutant ...

Si vous avez le goût d'aider un débutant, voici mon email:
richard_garant@videotron.ca

Merci !
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
11 févr. 2006 à 01:45
eh voilà, c'est mise-à-jour avec 1 ou 2 bricoles repérées....
pour la procédure EnumSections, j'ai laissé l'ancienne en fichier htm pour les curieux (s'il en reste)...

tenez-moi au courant, @+
PCPT [AFCK]
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
10 févr. 2006 à 18:04
Rey -> oui tout comme j'ai mis "chr" er non "chr$(0)", c'était pour taper plus vite.
404 -> ah beh ouai, simplement.. effectivement. (donc PEUT pas DOIT, mais très conseillé)
merci
katsankat Messages postés 571 Date d'inscription vendredi 30 décembre 2005 Statut Membre Dernière intervention 12 juillet 2012 3
10 févr. 2006 à 17:32
VbNullChar plutôt que chr(0) parce qu' appeler une constante est plus rapide qu'une fonction.
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
10 févr. 2006 à 17:30
**Chr$(0) PEUT, pas DOIT, non? remarque, une fois je met chr, l'autre je met VbNull, çà dépend de mes humeurs ^^

attention a pas confondre VbNull et VbNullChar
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
10 févr. 2006 à 14:56
Olixelle-> mis à part que je ne touche pas à .net, qu'appelles-tu sérialisation?

Econs -> cette source peut à mon avis servir à pas mal de monde. si tu la trouves intéressante, je te laisse également l'honneur de rediriger les VBistes apprentis^^

Egyde -> testé en IDE et compilé à l'instant, aucun plantage sur plus de 20 essais simultanés. par contre j'ai repéré un bug : si on quitte la Form en Minimized, impossible de la restaurer... (mise à jour dans la journée)

merci de vos remarques. notez si le coeur vous en dit ;)
Egyde Messages postés 158 Date d'inscription lundi 17 mai 2004 Statut Membre Dernière intervention 16 juillet 2007
10 févr. 2006 à 13:44
Chez moi, ça donne ça :

F5 pour charger le programme + fermeture du programme + re-F5 + re-fermeture = plantage.
econs Messages postés 4030 Date d'inscription mardi 13 mai 2003 Statut Membre Dernière intervention 23 décembre 2008 24
10 févr. 2006 à 13:31
pcpt> Tu as maintenant une réponse toute prête pour les questions du forum liées à la sauvegarde de formulaire. Désormais, on te laissera répondre à celles-là ;o)
Merci pour les explications. ca me va.
olixelle Messages postés 506 Date d'inscription vendredi 30 juillet 2004 Statut Membre Dernière intervention 3 mars 2008 2
10 févr. 2006 à 12:13
c sympa comme idée, j'avais fait la mm chose en.net mais via la sérialisation, je ne sais pas si c'est possible en vb6
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
10 févr. 2006 à 12:10
salut,
Econs -> **oui pas mal de lignes, dont un bon tiers n'étant pas lié directement à l'accès au fichier ini (about). seulement beaucoup d'entre-nous ont déjà répondu des dizaines de fois sur le forum avec juste ces 2 API, 2 petites fonctions, exemple, explications, etc.... et çà ne convient jamais parce qu'apparemment, pour ce genre de cas, uniquement le résultat compte. donc là, le résultat y est (j'espère), et la source sera toujours lisible quand le "super-débutant" perdra son préfixe :p
**pour le "Local", c'est pour ne pas être altéré par une erreur venant d'une procédure précédente (en l'occurence de la Form, donc du Dev). c'est surtout en cas de gestion avec renvoie à un Label qui ne testerait pas l'erreur. demande si c'est pas clair.....
**le caption, la source montre un exemple avec un timer. prenons WinAmp, le titre passe en boucle dans le caption. si je quitte, ce n'est pas ce dernier titre que je veux sauver, mais bien celui du démarrage de ma Form. "sCaption" reçoit donc ce titre au lancement et sera enregistré à la fin. on pourrait aussi simplement ne pas l'enregistrer...
**458752, j'avais un exemple avec 8192. la clé section pouvant faire 255, çà ne laisse que 32 sections. j'ai donc multiplié par 56.

Rey-> **ce "#If" est en référence au Guid-Api, mais en effet, il est de date plus proche que nos Windows ;)
**Chr$(0) PEUT, pas DOIT, non? remarque, une fois je met chr, l'autre je met VbNull, çà dépend de mes humeurs ^^
**"pourquoi", beh pourquoi pas... mais même en l'utilisant, il faut du code. regarde ma procédure, j'énumère tout mais ne renvoie que les sections qui concernent la Form en cours. celà dit çà peut être plus simple à lire. ok, je mettrai à jour cette procédure.

merci à vous 2 ;)
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
10 févr. 2006 à 10:50
ah ! j'oubliais :

idée interessante ^^
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
10 févr. 2006 à 10:49
C'est gentil de penser aux utilisateurs de Windows 95...
( #If Win32 Then )
pas convaincu que ca soit indispensable, cependant.

Chr$(0) à remplacer par VbNullChar

pourquoi ne pas avoir utilisé l'API GetPrivateProfileSectionNames ?

l'enregistrement et recperation des parametres pourraient se faire sans la moindre ligne de code...
(rendre, a la limite ce coté automatique parametrable)
econs Messages postés 4030 Date d'inscription mardi 13 mai 2003 Statut Membre Dernière intervention 23 décembre 2008 24
10 févr. 2006 à 09:53
Bon ... j'suis pas super débutant,mais je la regarde quand même ! Na !

Déjà, ce qui frappe à chaque fois que je regarde une de tes sources, c'est que c'est propre et agréable à lire. Ca serait très bien sur ma table de chevet, pour lire avant de faire dodo...
Une indentation claire et des commentaires, çà change tout.

OK pour que des super débutants l'utilisent (2 lignes, c'est pas grand chose), mais pas pour qu'ils le lisent. Quand je débutais, j'évitais soigneusement toutes les sources qui contenaient plus de 100 lignes. Il faut un peu de bouteille pour comprendre tes choix.

Peux-tu rappeler ici la différence entre "On Error" et "On Local Error". Ca m'intéresse et je suis un peu fainéant en cette fin de semaine ;o)

Ensuite, dans la procédure SetIniSettings(), je ne saisis pas le commentaire suivant :
' et pour le caption, on reprend celui du début (exemple : titre album (lecteur mp3) en fin de programme ne correspondrait plus à l'ouverture..)
Je ne dois pas être suffisamment réveillé. Un poil plus d'explications STP ?

Dans la fonction EnumSections, pourquoi ce chiffre bizarre (458752)??
sRet = String(458752, Chr$(0))
J'ai bien une petite idée ((512-64)*1024), mais je vais te laisser expliquer tout çà ;o)

Pas de remarque sur le code. C'est du VB comme je l'aime.
Pas testé parce que je n'ai pas VB sous la main, mais çà n'a pas l'air bancale.
Rejoignez-nous