IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB 6 et antérieur Discussion :

[VB6] Ouvrir sous et enregistrer sous


Sujet :

VB 6 et antérieur

  1. #1
    Membre régulier Avatar de batmat86
    Homme Profil pro
    Charge de clientele
    Inscrit en
    Octobre 2003
    Messages
    239
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Charge de clientele

    Informations forums :
    Inscription : Octobre 2003
    Messages : 239
    Points : 85
    Points
    85
    Par défaut [VB6] Ouvrir sous et enregistrer sous
    Bonjour, je reviens à vous pour un peu d'aide, oui je sais encore



    Comme vous le voyez sur ma form, j'ai plus de label ou édit qui vont contenir des informations lorsque j'aurais mis à jour les statistiques à partir d'un fichier récupéré sur internet.

    Une fois la mise à jour, je souhaiterais, faire Fichier->Enregistrer sous et là mettre dans un fichier du nom choisi par l'utilisateur et à l'endroit choisi aussi avec une extension .txt. Là dans ce fichier je souhaiterais mettre la valeur du label 1 dans la ligne 1 du fichier, label 2 ligne 2, edit 5 ligne 10 ....

    Je sais d'après mes recherches sur le forum que je dois utiliser des CommonDialog, j'en ai d'ailleurs mis deux, un SaveUser et l'autre OpenUser.

    Mais sortie de cela je ne sais pas comment faire le reste décrit plus haut.

    Et ensuite par la suite, je voudrais que l'on puisse faire fichier->Charger fichier, et là l'utilisateur choisir son fichier de configurations, et là on remettrais la ligne 1 dans le label 1 ....

    Voilà ce que je souhaite faire, mais je n'ai tellement trouvé de l'aide sur le forum pour mon problème, d'où mon sujet.

    merci par avance de votre aide.

  2. #2
    Inactif  
    Avatar de jmfmarques
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    3 784
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 3 784
    Points : 4 674
    Points
    4 674
    Par défaut
    Bon !
    Pas à pas, alors :
    Intéresse-toi à Open le_nom_du_fichier for Output (aide en ligne)
    ceci pour écrire ton fichier, donc.
    Et reviens nous voir avec le code que tu auras pu écrire après cette lecture pour le moins indispensable.
    Nous passerons ensuite à la seconde étape : celle de la lecture du fichier pour écrire dans tes Labels !
    Bon travail ! C'est on ne peut plus facile !

  3. #3
    Modérateur
    Avatar de AlainTech
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mai 2005
    Messages
    4 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2005
    Messages : 4 235
    Points : 24 327
    Points
    24 327
    Par défaut
    STP, n'oublie pas le tag VB6, la prochaine fois. Je viens de le mettre pour toi.

    Rien à voir avec ta question mais je m'interroge sur le nombre de CommonDialog sur ton formulaire.

    Sais-tu qu'un seul peut être appelé pour différentes fonctions?
    C'est au moment du .Show qu'on va déterminer le type de fonction qu'aura le dialogue.
    N'oubliez pas de cliquer sur quand vous avez obtenu ou trouvé vous-même la réponse à votre question.
    Si vous trouvez seul, pensez à poster votre solution. Elle peut servir à d'autres!
    Pensez aussi à voter pour les réponses qui vous ont aidés.
    ------------
    Je dois beaucoup de mes connaissances à mes erreurs!

  4. #4
    Membre régulier Avatar de batmat86
    Homme Profil pro
    Charge de clientele
    Inscrit en
    Octobre 2003
    Messages
    239
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Charge de clientele

    Informations forums :
    Inscription : Octobre 2003
    Messages : 239
    Points : 85
    Points
    85
    Par défaut
    Citation Envoyé par AlainTech
    STP, n'oublie pas le tag VB6, la prochaine fois. Je viens de le mettre pour toi.

    Rien à voir avec ta question mais je m'interroge sur le nombre de CommonDialog sur ton formulaire.

    Sais-tu qu'un seul peut être appelé pour différentes fonctions?
    C'est au moment du .Show qu'on va déterminer le type de fonction qu'aura le dialogue.
    Oups désolé pour le VB6 , d'habitude je le met

    Sinon pour le nombre de commondialog, il y était déjà lorsque j'ai récupéré les sources de l'application, et c'est pour cela que j'en ai ajouté deux, un pour ouvrir et l'autre enregistrer, je me suis fait à ce qui était existant

    Pour l'écrire dans un fichier, j'ai déjà pratiquer avec votre aide, j'avais fais cela
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    html_stat_personne = frm_stat.transfert.OpenURL _
                ("http://folding.extremeoverclocking.com/xml/user_summary.php?u=" & _
                frm_stat.txt_nom)
    Open "stats.txt" For Output As #1
    Print #1, html_stat_personne
    Close #1

  5. #5
    Inactif  
    Avatar de jmfmarques
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    3 784
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 3 784
    Points : 4 674
    Points
    4 674
    Par défaut
    ton sujet disait :
    Là dans ce fichier je souhaiterais mettre la valeur du label 1 dans la ligne 1 du fichier, label 2 ligne 2, edit 5 ligne 10 ....
    et le code que tu "fournis" là n'utilise aucun label !
    tu sais, au moins, ce que tu es en train d'essayer de faire ?
    Je vais donc t'inviter à revenir quand tu auras arrêté ta stratégie et que tu l'exposeras avec précision ! C'est un minimum !

  6. #6
    Membre régulier Avatar de batmat86
    Homme Profil pro
    Charge de clientele
    Inscrit en
    Octobre 2003
    Messages
    239
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Charge de clientele

    Informations forums :
    Inscription : Octobre 2003
    Messages : 239
    Points : 85
    Points
    85
    Par défaut
    Oui je sais que je n'ai pas mis, mais c'est tout simplement parce que je ne sais pas comment écrire à chaque ligne la donnée que je souhaite.

    Je pense que pour la première ligne cela devrait être bon :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Open "stats.txt" For Output As #1
    Print #1, lbl_nom_team.Caption
    Close #1
    Mais après je ne sais pas du tout comment faire

  7. #7
    Expert éminent sénior


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Points : 20 038
    Points
    20 038
    Par défaut
    Citation Envoyé par batmat86
    Oui je sais que je n'ai pas mis, mais c'est tout simplement parce que je ne sais pas comment écrire à chaque ligne la donnée que je souhaite.

    Je pense que pour la première ligne cela devrait être bon :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Open "stats.txt" For Output As #1
    Print #1, lbl_nom_team.Caption
    Close #1
    Mais après je ne sais pas du tout comment faire
    .. ben tu continu t'enchaine les Print...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Open "stats.txt" For Output As #1
    Print #1, lbl_nom_team.Caption
    Print #1, lbl_Prenom_team.Caption
    Print #1, lbl_Age_team.Caption
    Close #1
    mais l'utilisation de fichier 'ini' ne serai pas plus appropriée ?.
    voir
    http://vb.developpez.com/faq/?page=Systeme#ini


    et pour le command dialog... as tu lu :
    http://www.developpez.com/vbasic/tut...tutoriel12.php

  8. #8
    Membre régulier Avatar de batmat86
    Homme Profil pro
    Charge de clientele
    Inscrit en
    Octobre 2003
    Messages
    239
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Charge de clientele

    Informations forums :
    Inscription : Octobre 2003
    Messages : 239
    Points : 85
    Points
    85
    Par défaut
    Bonsoir, alors effectivement le .ini serait peut être plus adapté, donc je vais voir pour le réaliser.

    Pour le command dialog oui j'ai lu.

    Sinon, si je comprends bien, je vais donc avoir quelques chose du genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Private Sub m_fichier_enregistrersous_Click()
        SaveUser.Filter = "Fichiers Config (*.ini)|*.ini"
        SaveUser.ShowSave
    EcritDansFichierIni " StatUser", "Points", lbl_points_team.Caption, "setup.ini"
    End Sub
    Es ce cela ?? et je continu ainsi de suite pour chaque ligne ?

  9. #9
    Expert éminent sénior


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Points : 20 038
    Points
    20 038
    Par défaut
    il faut que tu remplace setup.ini .. par le nom de fichier sélectionné.. dans communDialog...

  10. #10
    Membre régulier Avatar de batmat86
    Homme Profil pro
    Charge de clientele
    Inscrit en
    Octobre 2003
    Messages
    239
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Charge de clientele

    Informations forums :
    Inscription : Octobre 2003
    Messages : 239
    Points : 85
    Points
    85
    Par défaut
    Heu, désolé, je suis un peu boulet, mais j'ai juste créer un commonDialog du nom de SaveUser.
    J'ai rien fais d'autres avec, et si je regarde ceux qui sont déjà en place puisque c'est une application qui a plusieurs mois, que je reprends pour faire de nouvelles versions, mais même dans ceux inexistants, il n'y a pas de nom de fichier, pourtant pour enregistrer l'image sous cela fonctionne.

    Faut dire que j'ai vraiment du mal à me plonger dans le VB, je trouve le C++ plus simple.

  11. #11
    Expert éminent
    Avatar de ThierryAIM
    Homme Profil pro
    Inscrit en
    Septembre 2002
    Messages
    3 673
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2002
    Messages : 3 673
    Points : 8 524
    Points
    8 524
    Par défaut
    Citation Envoyé par batmat86
    Faut dire que j'ai vraiment du mal à me plonger dans le VB, je trouve le C++ plus simple.


    désolé
    Vous vous posez une question, la réponse est peut-être ici :
    Toutes les FAQs VB
    Les Cours et Tutoriels VB6/VBScript
    Les Sources VB6


    Je ne réponds pas aux questions techniques par MP. Utilisez les forums. Merci de votre compréhension

  12. #12
    Membre régulier Avatar de batmat86
    Homme Profil pro
    Charge de clientele
    Inscrit en
    Octobre 2003
    Messages
    239
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Charge de clientele

    Informations forums :
    Inscription : Octobre 2003
    Messages : 239
    Points : 85
    Points
    85
    Par défaut
    Ba oui désolé de dire cela, mais c'est ce que je trouve, peut être parce que je n'ai fais que du c++ pendant mon bts

    Sinon pour le commondialog, je n'ai pas compris, si un seul peu tout faire, alors pourquoi l'ancien développeur en a 4 ou 5 ?? Et dans quel champs doit on mettre le nom du fichier dans le common, car je ne vois pas de champs fait pour A part filtrer les extensions comme je l'ai fait, je ne vois pas faire.


    [edit] Je viens peux être de comprendre, c'est à dire faire cela :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Private Sub m_fichier_enregistrersous_Click()
        SaveUser.Filter = "Fichiers Config (*.ini)|*.ini"
        SaveUser.ShowSave
    EcritDansFichierIni " StatUser", "Points", lbl_points_team.Caption, SaveUser.Filename
    End Sub

  13. #13
    Inactif  
    Avatar de jmfmarques
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    3 784
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 3 784
    Points : 4 674
    Points
    4 674
    Par défaut
    Hem....
    Je vois une certaine confusion....
    il y a 2 problèmes et ils sont distincts :
    1) se servir du commonDialog (c'est une chose)
    2) écrire et lire dans un fichier (c'en est une autre, complètement indépendante du CommonDialog)

    Le CommonDialog, ici, ne sert qu'à ouvrir un répertoire pour y choisir (en cliquant, un fichier)

  14. #14
    Membre régulier Avatar de batmat86
    Homme Profil pro
    Charge de clientele
    Inscrit en
    Octobre 2003
    Messages
    239
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Charge de clientele

    Informations forums :
    Inscription : Octobre 2003
    Messages : 239
    Points : 85
    Points
    85
    Par défaut
    Oui j'avoue que c'est surement moi qui merdouille à comprendre le CommonDialog.

    Mais d'après mes recherches, pour faire un enregistrer sous et donner la main à l'utilisateur pour choisir son nom de fichier et son répertoire, faut utilise ce CommonDialog.

    C'est pour cela que je l'utilise, là après peut être pas correctement je l'accorde, c'ets pour cela que je viens demander de l'aide. Car pour moi CommonDialog, sert juste à afficher la boite de dialog à l'utilisateur mais ne gére pas le enregistrer le fichier, ou alors je me trompe ??

  15. #15
    Expert éminent sénior


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Points : 20 038
    Points
    20 038
    Par défaut
    oui le CommonDialog permet seulement le choix du fichier... surement qu'avec 1 tu en aurai eu assez

  16. #16
    Expert éminent
    Avatar de ThierryAIM
    Homme Profil pro
    Inscrit en
    Septembre 2002
    Messages
    3 673
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2002
    Messages : 3 673
    Points : 8 524
    Points
    8 524
    Par défaut
    Citation Envoyé par batmat86
    CommonDialog, sert juste à afficher la boite de dialog à l'utilisateur mais ne gére pas le enregistrer le fichier, ou alors je me trompe ??
    Non tu ne te trompes pas

    L'enregistrement doit bien être géré à part, comme tu l'as fait

    Par contre un commondialog peut ouvrir les boites de dialogue suivantes :
    - Ouvrir
    - Enregistrer
    - Couleurs
    - Polices
    - Imprimantes
    - Help

    et un seul suffit pour toutes ces actions
    c'est à l'appel que l'on définit la boite à afficher avec les méthodes :
    .ShowOpen
    .ShowSave
    ....

    et si le programmeur précédent était un incompétent, ne tombe pas dans les memes travers, surtout si tu débutes en VB


    et désolé pour la petite moquerie sympa, car moi et C++, on n'est pas copains
    Vous vous posez une question, la réponse est peut-être ici :
    Toutes les FAQs VB
    Les Cours et Tutoriels VB6/VBScript
    Les Sources VB6


    Je ne réponds pas aux questions techniques par MP. Utilisez les forums. Merci de votre compréhension

  17. #17
    Membre régulier Avatar de batmat86
    Homme Profil pro
    Charge de clientele
    Inscrit en
    Octobre 2003
    Messages
    239
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Charge de clientele

    Informations forums :
    Inscription : Octobre 2003
    Messages : 239
    Points : 85
    Points
    85
    Par défaut
    Alors dites moi, cela serait donc correct, si je comprends bien ??

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    <div style="text-align: left;">Private Sub m_fichier_enregistrersous_Click()
        SaveUser.Filter = "Fichiers Config (*.ini)|*.ini"
        SaveUser.ShowSave
    EcritDansFichierIni " StatUser", "Points", lbl_points_team.Caption, SaveUser.Filename
    End Sub</div>
    SaveUser étant le nom de mon commondialog.

    Alors enfait l'ancien développeur, en a mis plusieurs, le pourquoi, et bien parce qu'il y en a eu qui sert à ouvrir un fichier du client qui est en txt, un pour ouvrir le fond de la signature, donc une image en .jpg ou .gif ...
    Un pour changer la police sur la signature, un autre la couleur sur la signature. Voilà comment c'est fait en gros d'après ce que j'ai compris de la stucture actuelle.

    Et le pire, c'est qu'il n'y a aucun commentaire du code, donc dur à comprendre sa logique de développement, je crois que c'est pire que changer de langage de programmation. Et pas de problème pour la moquerie, sinon j'aurais raler si cela n'était pas passé

  18. #18
    Expert éminent
    Avatar de ThierryAIM
    Homme Profil pro
    Inscrit en
    Septembre 2002
    Messages
    3 673
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2002
    Messages : 3 673
    Points : 8 524
    Points
    8 524
    Par défaut
    Il ne faut pas confondre les objets action (comme sous Delphi, par exemple, excuse-moi mais comme je ne connais rien au C++, je fais des analogies avec ce que je connais), et un controle ocx

    dans ton cas, tu peux conserver un seul commondialog, et l'appeler avec la methode ad hoc quand tu en a besoin
    Vous vous posez une question, la réponse est peut-être ici :
    Toutes les FAQs VB
    Les Cours et Tutoriels VB6/VBScript
    Les Sources VB6


    Je ne réponds pas aux questions techniques par MP. Utilisez les forums. Merci de votre compréhension

  19. #19
    Expert éminent sénior


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Points : 20 038
    Points
    20 038
    Par défaut
    Citation Envoyé par batmat86
    Alors dites moi, cela serait donc correct, si je comprends bien ??
    il ne te maque qu'as traité le cas ou l'opérateur clique sur Cancel..
    ==> SaveUser.Filename =""

  20. #20
    Membre régulier Avatar de batmat86
    Homme Profil pro
    Charge de clientele
    Inscrit en
    Octobre 2003
    Messages
    239
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Charge de clientele

    Informations forums :
    Inscription : Octobre 2003
    Messages : 239
    Points : 85
    Points
    85
    Par défaut
    Citation Envoyé par ThierryAIM
    dans ton cas, tu peux conserver un seul commondialog, et l'appeler avec la methode ad hoc quand tu en a besoin
    Alors là je crois que je verrais peut être plus tard pour optimiser et surtout quand j'aurais trouver le ad hoc.

    Mais je pense que je vais faire les choses petit à petit, donc déjà arrivais à faire avec ce commondialog que j'ai créer, et enregistrer mes infos dans le fichiers ini correctement, serait vraiment bien pour moi.

    Ensuite faudrais aussi que j'arrive à ouvrir ce fichier ini et faire l'opération inverse, c'est à dire mettre dans les labels, les valeurs lues. Mais cela c'est la deuxième étape, et la 3ème sera d'optimisé tout cela, mais vu le bordel que c'est dans son code, je pense que je ne suis pas couché

    Mais si je fais la partie de code que j'ai donné, cela est correct, je demande pour éviter de me taper 70 lignes de codes pour tout mes labels pour rien

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. Réponses: 22
    Dernier message: 29/06/2015, 14h04
  2. [WD-97] mot de passe enregistrer sous et enregistrer
    Par willytito dans le forum Word
    Réponses: 3
    Dernier message: 26/06/2012, 13h31
  3. Applet, ouvrir la fenetre "Enregistrer sous" sur u
    Par HopeLeaves dans le forum Applets
    Réponses: 4
    Dernier message: 26/04/2011, 11h38
  4. Réponses: 3
    Dernier message: 07/11/2008, 11h41
  5. Ouvrir un projet VB3 sous VB6
    Par Nicomart dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 11/07/2006, 16h21

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo