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

Delphi Discussion :

mrYes pour MessageDlg


Sujet :

Delphi

  1. #1
    Membre confirmé
    Inscrit en
    Octobre 2005
    Messages
    180
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 180
    Par défaut mrYes pour MessageDlg
    Bonjour,

    Un petite erreur de syntaxe...

    Comment faire pour utiliser les mrYes,... comme réponse à une MessageDlg?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    if(MessageDlg('aaa', mtConfirmation, [mbYes, mbNo], 0) = [mrYes]) then
        MessageDlg('Yes', mtWarning, [mbOK], 0);
    Il n'accepte pas de compiler et je suis donc obligé de faire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    if(MessageDlg('aaa', mtConfirmation, [mbYes, mbNo], 0) = 6) then
        MessageDlg('Yes', mtWarning, [mbOK], 0);
    Et j'ai déja remarqué le meme probleme avec d'autres constantes...

    PS: Je suis sur Delphi 2006

    D'avance merci


    Ben

  2. #2
    Expert confirmé
    Avatar de Cl@udius
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2006
    Messages
    4 878
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 4 878
    Par défaut
    Salut,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    if(MessageDlg('aaa', mtConfirmation, [mbYes, mbNo], 0) = mrYes) then
        MessageDlg('Yes', mtWarning, [mbOK], 0);
    La réponse renvoyée par MessageDlg n'est un ensemble mais un simple integer.

    @+

  3. #3
    Membre confirmé
    Inscrit en
    Octobre 2005
    Messages
    180
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 180
    Par défaut
    Oui mais il est normalement prévu d'utiliser des constantes plutut que l'integer pour plus de lisibilité du code me semble t il

  4. #4
    Expert confirmé
    Avatar de Cl@udius
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2006
    Messages
    4 878
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 4 878
    Par défaut
    C'est exactement ce que je viens d'écrire:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
       if MessageDlg(...) = mrYes then ...
    @+

  5. #5
    Membre confirmé
    Inscrit en
    Octobre 2005
    Messages
    180
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 180
    Par défaut
    Ok c'est ce que j'écrit également me semble t il mais ca ne compile pas!!!
    Alors pourquoi?

  6. #6
    Membre averti
    Inscrit en
    Avril 2004
    Messages
    14
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Avril 2004
    Messages : 14
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
        sure:=false;
       with CreateMessageDialog('Etes vous sur de vouloir supprimer ce flux?', mtWarning,[mbYes,mbNo]) do
            try
            case ShowModal of
                    mrYes:   sure:=true;
                    else
                    begin
                            sure:=false;
                            Free;
                    end;
            end;
            except
                    free;
            end;
        if sure then
    J'utilise toujours mes dialogues de confirmation de cette facon
    En esperant que ca puisse t'inspirer

  7. #7
    Membre confirmé
    Inscrit en
    Octobre 2005
    Messages
    180
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 180
    Par défaut
    Et en plus de lignes?

  8. #8
    Expert confirmé
    Avatar de Cl@udius
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2006
    Messages
    4 878
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 4 878
    Par défaut
    Non, relis ton code: ce n'est pas ce que tu as écrit.

    ton code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
      if MessageDlg(...) = [mrYes] then ...
    [mrYes] est un ensemble.

    Mon code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
      if MessageDlg(...) = mrYes then ...
    mrYes une constante integer (de valeur 6).

    C'est pour cela que ton compilo n'est pas d'accord.
    @+

  9. #9
    Membre confirmé
    Inscrit en
    Octobre 2005
    Messages
    180
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 180
    Par défaut
    oui effectivement tu as raison mais j'avais déja essayé également de faire

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if MessageDlg(...) = mrYes then ...

  10. #10
    Membre averti
    Inscrit en
    Avril 2004
    Messages
    14
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Avril 2004
    Messages : 14
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
       with MessageDlg('aaa', mtConfirmation, [mbYes, mbNo], 0)do
            try
            case ShowModal of
                    mrYes:   MessageDlg('Yes', mtWarning, [mbOK], 0);
                    else
                    begin                        
                            Free;
                    end;
            end;
            except
                    free;
            end;
    Voila dans ton cas

  11. #11
    Membre confirmé
    Inscrit en
    Octobre 2005
    Messages
    180
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 180
    Par défaut
    oui mais bon alors je préfere encore ma solution de
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if(MessageDlg('aaa', mtConfirmation, [mbYes, mbNo], 0) = 6) then

  12. #12
    Expert confirmé
    Avatar de Cl@udius
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2006
    Messages
    4 878
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 4 878
    Par défaut
    Citation Envoyé par the big ben 5
    oui effectivement tu as raison mais j'avais déja essayé également de faire

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if MessageDlg(...) = mrYes then ...
    Et bien dans ce cas tu ne devrais pas avoir d'erreur de compilation.
    Si ?

  13. #13
    Modérateur
    Avatar de Rayek
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2005
    Messages
    5 236
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Haute Savoie (Rhône Alpes)

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

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 236
    Par défaut
    Es tu sûr d'avoir l'unité Controls dans les uses de ton unité ?
    Modérateur Delphi

    Le guide du bon forumeur :
    __________
    Rayek World : Youtube Facebook

  14. #14
    Membre confirmé
    Inscrit en
    Octobre 2005
    Messages
    180
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 180
    Par défaut
    Non je ne l'avais pas controls... Et c'était ca!!!

    Un super grand merci

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

Discussions similaires

  1. [Lazarus] MessageDlg pour confirmation
    Par camcam10 dans le forum Lazarus
    Réponses: 2
    Dernier message: 29/05/2011, 22h53
  2. Réponses: 2
    Dernier message: 12/03/2007, 14h48
  3. Outils, cours et NOUVEAUX tutoriels pour Borland C++Builder
    Par hiko-seijuro dans le forum C++Builder
    Réponses: 10
    Dernier message: 12/03/2006, 22h33
  4. Réponses: 2
    Dernier message: 18/09/2003, 13h46
  5. Réponses: 2
    Dernier message: 20/03/2002, 23h01

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