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

C# Discussion :

Changement de l'intitulé d'un bouton


Sujet :

C#

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 46
    Points : 21
    Points
    21
    Par défaut Changement de l'intitulé d'un bouton
    Bonjour a tous,
    je viens ici pour vos demander de l'aide, je suis en terminale S-SI (sciences de l'ingénieur) et comme vous le savez peut être nous avons un projet a faire. le projet avance bien mais je bute sur le programme informatique. En effet mon programme comporte plusieurs boutons et pour l'instant les noms sont écrits "en dur" dans le programme. Je souhaiterais donc via un fichier (.ini . xml ou autre peut importe) pouvoir les changer a la volée (cad après le redémarrage du logiciel et sans passer par la case programmation que l'on puisse le faire sans les sources du programme) le problème c'est que je ne c'est pas du tout comment faire. J'ai bien trouvé les sources sur voter site (très bien fait au passage) mais je ne les comprends pas
    je vous demande donc de l'aide sur comment résoudre mon problème.

    le logiciel a été créer avec Visual Studio Express 2008 et les boutons ouvrent un nouveau form .
    Si vous voulez d'autres infos je vous les donnerais avec grand plaisir

    merci d'avance !
    Julien.
    PS : je vous joint un screenshot des dits boutons.
    PS2 :merci de bien vouloir expliquer très simplement je suis complètement novice en C#
    Images attachées Images attachées  

  2. #2
    Membre émérite
    Profil pro
    Mangeur de gauffre
    Inscrit en
    Octobre 2007
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Mangeur de gauffre

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 413
    Points : 2 498
    Points
    2 498
    Par défaut
    Salut


    Quel est le vrai problème ?
    1- Lire un fichier texte qui contient tes info ?
    2- Ou changer le libellé d'un bouton ?

    Pour 2
    MonBouton.Text="gpgp007"

    Pour 1

    a) il faut avoir un fichier contenant le nom du bouton et le texte ( à toi de definir la structure de ce fichier)
    b) Lors du chargement de la form, tu lis ce fichier tu parse la clef (nom du bouton) et le texte associé


    Maintenant meme si cette mecanique peut etre utile dans certains cas, ils sont rare.
    Pourquoi veux tu faire cela ?

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 46
    Points : 21
    Points
    21
    Par défaut
    hum je me suis mal exprimé les boutons correspondent en fait au nom du patient d'un docteur. Et si le docteur doit changer le nom du patient (donc du bouton) je voudrais qu'il puisse le faire sans devoir tout re-programmer donc par exemple juste modifier une ligne dans un fichier texte ou alors dans une table sql ou autre (ou encore mieux pouvoir le faire directement depuis le programme mais je rêve un peu la j'pense)

    merci de vous intéresser a mon problème en tout cas ça change d'autre forum !

  4. #4
    Membre émérite
    Profil pro
    Mangeur de gauffre
    Inscrit en
    Octobre 2007
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Mangeur de gauffre

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 413
    Points : 2 498
    Points
    2 498
    Par défaut
    A mon avis meme si l'on peut faire ce que tu cherche a faire il y a quand meme un problème de concept a la base !

    J'espere que ton docteur n'a pas qu'un seul patient avec un bouton
    Ni plusieurs patient avec plein de boutons

    Blague a part je ne sais pas ce que tu veux faire avec ce bouton mais a mon avis ce n'est pas lui qui doit porter le nom du patient

    A priori je chargerais les patient dans un combo par exemple et j'utiliserais un bouton OK pour valider le choix.

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 46
    Points : 21
    Points
    21
    Par défaut
    c'est sur que si il a un bouton par patient il va lui falloir du quad-screen a ce pauvre docteur .
    En fait en cliquant sur un bouton par exemple "madame Durand" ça va envoyé un ordre a un moteur qui va ouvrir un tiroir a une certaine distance de façon a présenter le dossier de madame Durand.
    Mais imaginons que madame Durand meure (paix a son âme) le docteur n'aura plus besoin de son dossier et voudra donc le renommer avec le nom d'un autre patient et donc pour faire ça il faudra juste qu'il renomme le bouton.mais comment faire ? thats is the question mon cher Watson!! et j'y pense le nom d'un bouton ne peut pas être la donnée d'une table sql ? si oui avec sql studio 05?

    PS : Mon TPE n'ayant pas pour but d'être vendu nous avons juste réaliser une maquette avec moins de 10 dossiers. donc il est tranquille le doc'

  6. #6
    Membre émérite
    Profil pro
    Mangeur de gauffre
    Inscrit en
    Octobre 2007
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Mangeur de gauffre

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 413
    Points : 2 498
    Points
    2 498
    Par défaut
    Je maintiens qu'un combo et un seul bouton ce serait plus facile !

    Mais soit !
    Je part manger et je t'explique aprés mais tout est déja +/- dans mon premier message

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 46
    Points : 21
    Points
    21
    Par défaut
    hum je n'avais pas compris ce qu'était "un combo" (un peu couillon des fois j'vous dit !)et effectivement ça a l'air pas mal si j'ai bien pigé le truc (il y a peu de chances ^^) le principe c'est de mettre les données dans un base sql c'est bien ça?

    sur ce je vais moi aussi manger
    en tout cas merci de t'occuper de mon problème et rapidement en plus !

  8. #8
    Membre émérite Avatar de Guulh
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    2 160
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2007
    Messages : 2 160
    Points : 2 925
    Points
    2 925
    Par défaut
    Nan, nan, une combobox c'est juste une textbox avec une partie déroulante. Comme la barre d'URL de ton navigateur par exemple.

    Les WinForms ont un designer : profites-en, mets plein de contrôles dans une form, et regarde comment ça se comporte. Et observe les applications que tu as déjà, comme windows lui-même, IE / firefox, (open)office, ... pour s'inspirer de leur ergonomie et bien choisir quel contrôle utiliser en fonction de ton besoin.

  9. #9
    Membre émérite
    Profil pro
    Mangeur de gauffre
    Inscrit en
    Octobre 2007
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Mangeur de gauffre

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 413
    Points : 2 498
    Points
    2 498
    Par défaut
    le principe c'est de mettre les données dans un base sql c'est bien ça?
    Le principe c'est de mettre les données suceptible de changer là ou tu pourra les maintenir le plus facilement (une base sql me semble effectivement indiqué)


    Ensuite au chargement de ta form, tu peux loader la liste des patient dans un combo-box

    Ton medecin poura choisir son patient dans ce combo
    Et valider le choix a l'aide d'un seul bouton OK

  10. #10
    Membre éclairé Avatar de ppphil
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    612
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2007
    Messages : 612
    Points : 685
    Points
    685
    Par défaut
    Et puis Sql ou fichier texte c'est complètement égal...
    Tu fais un objet avec une fonction qui te retourne les données clients dont tu as besoin.
    Dans un premier temps, et du moment qu'il s'agit d'un TPE avec pas plus de 10 clients, mets le tout dans un fichier texte.
    Arrange-toi pour que la signature de ta fonction soit suffisamment générique pour que tu n'aie plus qu'à en modifier le code pour accéder à une base de données par la suite.

  11. #11
    Membre émérite
    Profil pro
    Mangeur de gauffre
    Inscrit en
    Octobre 2007
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Mangeur de gauffre

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 413
    Points : 2 498
    Points
    2 498
    Par défaut
    Oui,

    Mais j'imagine qu'il n'y a pas que les noms des 10 patient a gerer !
    Ou alors je ne vois pas tres bien ce que peut faire cette app

    Alors tout gerer en fichier texte ca me semble un peu zarbi !

  12. #12
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 46
    Points : 21
    Points
    21
    Par défaut
    bonjour a tous,
    tout d'abord merci pour vos réponses !
    j'ai en parti solutionner mon problème en utilisant un combo-box et une bdd access 2007 (je l'avais d'installer sur ma machine) donc merci a tous !
    mais maintenant j'ai d'autre petites questions (comme par hasard)
    comment faire pour lier le bouton au combo-box ? et je voudrais que en cliquant sur le bouton cela ouvre un form comme en pièce jointe et avoir donc le nom de la personne je suis entrain de chercher comment faire mais pour l'instant je bute

    et sinon une question qui n'a aucun rapport et il possible de générer son projet autrement que via le menu "générer" --> publier
    je demande cela car une fois le programme compilé la façon de l'installer de me plait pas du tout il va installer ça dans un dossier obscure dans "local settings" alors que moi je le voudrais dans le "program files"

    merci pour vos réponses et désolé pour mes questions de noobs

    PS ne faites pas attention aux flèches sur le screenshot je l'ai repris de ma présentation powerpoint donc elle n'existent pas dans le programme
    Images attachées Images attachées  

  13. #13
    Membre émérite
    Profil pro
    Mangeur de gauffre
    Inscrit en
    Octobre 2007
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Mangeur de gauffre

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 413
    Points : 2 498
    Points
    2 498
    Par défaut
    Quand tu intercepte l'event click du Bouton tu dois prendre le selectedvalue de ton combo qui sera normalement le patient (tout dépends comment tu a bindé to combo)

    Pour le reste tu fait project build et tu lance l'exe qui se trouve en Release !

    Le publish est un truc que je n'ai jamais employé !
    Soit je copie simplement l'exe
    Soit je fais un intalleur avec NSI

  14. #14
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 46
    Points : 21
    Points
    21
    Par défaut
    merci pour tes réponses j'ai compris comment faire pour la release mais je n'est pas encore chercher pour le bouton de la combo-box je chercherais sans doute demain ayant encore une foule de chose a faire ce soir

    mais merci pour tout !

  15. #15
    Membre émérite
    Profil pro
    Mangeur de gauffre
    Inscrit en
    Octobre 2007
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Mangeur de gauffre

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 413
    Points : 2 498
    Points
    2 498
    Par défaut
    n'est pas encore chercher pour le bouton de la combo-box
    Ce n'est pas "le" bouton de la combo mais "un" bouton que tu utilise pour traiter la selection donnée par le combo

    1-Le medecin cherche son patient dans la combo
    2-Quand un patient a été choisi et que le medecin veux lancer un "traitement" pour ce patient, il utilise ton Bouton qui s'appelle "Ok" mais plus "Durand", "Dupond", "Duchmol", "Duchmol Germaine", "Duchmol Jean-Pierre", "Goossens Bara Jean Hubert" (un grand bouton ca !)

  16. #16
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 46
    Points : 21
    Points
    21
    Par défaut
    hum j'ai pas trop compris ta réponse désolé ...
    Pour l'instant je suis entrain de me chercher une carte d'entrée sortie simple a comprendre et pas cher et je trouve pas....
    et ayant une multitude de chose a faire je continuerais mon programme dans la semaine

  17. #17
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 46
    Points : 21
    Points
    21
    Par défaut
    Re-bonjour a tous,
    me revoilà avec mes questions de débutants !

    j'ai réussi a faire quasiment tout (pour l'instant^^) mon combo-box marche comme il faut. quand on choisi une valeur il ouvre un autre form est ce la que je bute : je voudrais que dans ce form il y est cette phrase "le dossier de VALEUR CHOISI DANS LE COMBO a bien été ouvert. "
    je cherche je cherche et.... je trouve pas !

  18. #18
    Membre émérite Avatar de Guulh
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    2 160
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2007
    Messages : 2 160
    Points : 2 925
    Points
    2 925
    Par défaut
    C'est un sujet très récurrent dans ce forum. Cherche "communication entre forms", "échange de variables entre forms", ...

  19. #19
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 46
    Points : 21
    Points
    21
    Par défaut
    bonjour,
    bon j'ai faits des recherches et j'ai trouvé des truc intéressent :
    j'ai donc mis ce code dans ma form principale
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
       string valeur = ComboBox.Text.ToString();
                Form form1 = new ouverturedossier(valeur);
                form1.Show();
    et dans le form ouverturedossier j'ai mis ce code ;
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
            string valeur;
                           public ouverturedossier(string valeur) 
                               {
                                    InitializeComponent();
                                    this.valeur = valeur;
                               }
    juste avant " private void InitializeComponent()".
    et ensuite voici le code de mon Label3
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
                // label3
                // 
                this.label3.AutoSize = true;
                this.label3.Location = new System.Drawing.Point(91, 20);
                this.label3.Name = "label3";
                this.label3.Size = new System.Drawing.Size(35, 13);
                this.label3.TabIndex = 6;
                this.label3.Text = ToString(valeur);
                this.label3.Click += new System.EventHandler(this.label3_Click);
    et quand je compile j'obtiens cette maginique erreur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Erreur	1	Aucune surcharge pour la méthode 'ToString' ne prend d'arguments '1'
    help messieurs dames a vot' bon coeur !

  20. #20
    Expert éminent
    Avatar de StormimOn
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2005
    Messages
    2 593
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2005
    Messages : 2 593
    Points : 7 660
    Points
    7 660
    Par défaut
    Il suffit de lire le message d'erreur. Et si tu regardais la pile des appels tu aurais eu le numéro de la ligne posant problème.

    Bref, c'est ce bout de code qui coince
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    this.label3.Text = ToString(valeur);
    Cela devrait plutôt être ainsi
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    this.label3.Text = valeur;
    valeur étant une chaîne de caractère le ToString ne sert absolument à rien.

    Mais pour avoir l'erreur en question cela veut dire que tu as modifié la méthode InitializeComponent. La méthode InitializeComponent est gérée par le designer de Visual Studio donc ne modifie jamais cette méthode. Il vaut mieux faire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    public ouverturedossier(string valeur) 
    {
        InitializeComponent();
        this.valeur = valeur;
        this.label3.Text = valeur;
    }
    Voire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    public ouverturedossier(string valeur) 
    {
        InitializeComponent();
        this.label3.Text = valeur;
    }
    Si valeur ne sert qu'à initialiser le label.

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

Discussions similaires

  1. [réglé]changement d'état d'un radio bouton non pris en compte!
    Par leprogrammeurfou dans le forum ASP.NET
    Réponses: 2
    Dernier message: 12/06/2008, 14h32
  2. Comment mettre sur deux lignes l'intitulé d'un bouton ?
    Par lolymeupy dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 03/04/2008, 19h51
  3. Réponses: 5
    Dernier message: 05/08/2007, 18h16
  4. Réponses: 4
    Dernier message: 20/09/2006, 16h54
  5. Classe de boutons avec changement de listeners
    Par guipom dans le forum Composants
    Réponses: 2
    Dernier message: 25/01/2005, 12h26

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