Bonjour à tous,
Je me lance dans la fabrication de ma propre boite de dialogue (name : myMessageDlgPos qui contient 2 TBitBtn, 1Timage et 1 TRichEdit), et j'ai un petit soucis avec la valeur de retour
En lisant des post traitant du sujet, je devrais avoir Rep = 6 si je cliques sur Btn1 et 7 si je cliques sur Btn2
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 var Rep: TModalResult; begin myMessageDlgPos.Btn1.Kind := bkYes; myMessageDlgPos.Btn1.ModalResult := mrYes; // idYes = 6 myMessageDlgPos.Btn2.Kind := bkNo; myMessageDlgPos.Btn2.ModalResult := mrNo; // idNo = 7 myMessageDlgPos.Msg.Text := 'ATTENTION bla bla bla ?'; Rep := myMessageDlgPos.ShowModal; if Rep = mrYes then ...//...
Or, à tous les coups Rep = 2 qui correspond à mrCancel
► Pour tester, j'ai mis dans les évènements onClick de chaque boutons :
: le renvoie est correctShowMessage(intToStr(myMessageDlgPos.ModalResult));
Close; // pour fermer la fiche
Par contre dans l'évènement onClose, le renvoie = 2
Donc, il y a un moment où ModalResult prends la valeur mrCancel ...
► Je me demande si ce n'est pas le Close qui mets le bazars ...
Qu'est ce qui cloche chez moi ?
Partager