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

Windows Forms Discussion :

Variables partagées sur plusieurs Forms


Sujet :

Windows Forms

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    89
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 89
    Points : 50
    Points
    50
    Par défaut Variables partagées sur plusieurs Forms
    Bonjour à tous,

    Je vous écris pour obtenir de l'aide sur l'utilisation de même variables dans plusieurs Forms.
    En résumé, j'ai créé un petit soft (avec beaucoup d'aide de la part des membres de ce forum... merci!!!), et j'ai ajouté une nouvelle Form appelée "Options". Un bouton sur la Form principale permet d'y accéder...
    J'utilise plusieurs variables dans ma Form principale que j'aimerais reprendre dans la Form "Options". Dois-je les déclarer de nouveau ?
    Comment écrire des "Paths" en relatif... A partir du dossier Ressources par exemple?
    Merci d'avance de votre aide,

  2. #2
    Membre actif Avatar de hellspawn_ludo
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    257
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 257
    Points : 215
    Points
    215
    Par défaut
    Salut,

    Non, tu n'est pas obligé de les déclarer de nouveau. Pour cela, tu peux utiliser des variables globales.

    Pour écrire des "Path" en relatif comme tu dis, cré les variables dans les "Ressources" et donne leur un "Type" ensuite pour affecter une valeur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    'Pour du string
    My.Settings.NomVariableString = "Une valeur"    
     
    'Pour des entiers
    My.Settings.NomVariableInteger= 14
     
    'Enfin, tu sauvegardes ces valeurs ainsi tu pourras
    'les exploiter de nouveau quand tu relanceras ton programme
    My.Settings.Save()
    Si t'as d'autres questions, n'hésite pas.

  3. #3
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Points : 13 314
    Points
    13 314
    Par défaut
    De maniére générale, et hors le cas spécifique des options qui doivent être enregistrées dans la config, le plus simple et le moins inélégant pour ce genre de cas est de créer un singleton dans lequel tu mets toutes les "variables" globales de ton appli.

    Tu ajoute de préférences des accesseurs, afin de créer une sécurité de conflit d'accés inter-threads.

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    89
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 89
    Points : 50
    Points
    50
    Par défaut
    Bonsoir,

    Toutes mes excuses, mais j'ai rien compris que ce soit l'un ou l'autre... Je dois avouer que je suis débutant, mais vraiment débutant, et arriver au stade où je suis, relève de l'exploit!!!


    Alors reprenons... Si je veux jouer des sons dans mon appli. Pour l'instant j'ai une string qui donne le chemin vers le fichier puis ne ligne de code qui est
    Code VB2005 : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Dim sound_error As String = "C:/sound_error.wav"
    My.Computer.Audio.Play(sound_error)

    Voilà, ne sachant pas où sera installer le soft, je voulais mettre un chemin en relatif à partir de mon *.exe.
    En fouillant, j'ai pu insérer dans l'onglet "Ressources" de mon appli, les quatre fichiers sons. Mais je ne sais pas quelle est la ligne de code qui me permet des les jouer!!!
    Est ce :
    Code VB2005 : Sélectionner tout - Visualiser dans une fenêtre à part
    My.Resources.sound_start.Read()

    Et ces chemins qui sont utilisés dans ma Form principale, comment puis je les modifier dans ma Form "Options"?

    Merci d'avance de votre aide,

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    89
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 89
    Points : 50
    Points
    50
    Par défaut
    Bon, bin ce fut bref... c'était :
    Code VB2005 : Sélectionner tout - Visualiser dans une fenêtre à part
    My.Computer.Audio.Play(My.Resources.sound_error, AudioPlayMode.Background)
    Je poursuis sur mes variables partagées et sauvegardées... J'ai trouvé l'onglet [Settings] et [Resources]...

  6. #6
    Membre expérimenté

    Homme Profil pro
    kiné passionné de dev
    Inscrit en
    Mars 2006
    Messages
    1 570
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : kiné passionné de dev

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 570
    Points : 1 738
    Points
    1 738
    Billets dans le blog
    1
    Par défaut
    Ou encore, dans une classe en publique il fait une Sub qui joue le son et il l'appelle.

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    89
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 89
    Points : 50
    Points
    50
    Par défaut
    Bon, pour clôturer ce post, j'ai utilisé les "resources" et "settings", exemple :
    Code VB2005 : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    My.Computer.Audio.Play(My.Resources.sound_finish, AudioPlayMode.Background)
    login_tbx.Text = My.Settings.login.ToString
    Ca marche nickel. Bon, les fichiers "son" sont inclus dans l'exe donc pas remplaçable sans mise à jour de celui ci mais bon, ca fonctionne parfaitement : que demander de plus!
    Merci à tous,
    --
    Benoît

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Passer uen valeur d'une variable sur plusieurs Form !
    Par Naografix dans le forum VB.NET
    Réponses: 8
    Dernier message: 22/11/2012, 14h25
  2. Variable partagée sur plusieurs pages
    Par romfauch63 dans le forum Langage
    Réponses: 3
    Dernier message: 18/05/2009, 14h35
  3. maximize et restore sur plusieurs form et états
    Par GymTonic dans le forum IHM
    Réponses: 7
    Dernier message: 16/03/2006, 21h36
  4. Cache partagé sur plusieurs XMLServices
    Par Sylvain James dans le forum XMLRAD
    Réponses: 2
    Dernier message: 04/10/2005, 13h21
  5. variable globale pour plusieurs Form
    Par ced2004 dans le forum Windows Forms
    Réponses: 1
    Dernier message: 05/04/2005, 08h50

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