Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi mrResult von QDialogs und Dialogs (https://www.delphipraxis.net/8983-mrresult-von-qdialogs-und-dialogs.html)

Blechwolf 16. Sep 2003 11:52


mrResult von QDialogs und Dialogs
 
Salut,

ich verwende ein paar Sachen aus Qdialogs, und wollte entsprechend auch meinen MessageDlg damit darstellen lassen. normalerweise sollte die folgende Abfrage zu dem gewünschten ergebnis führen:

Delphi-Quellcode:
if QDialogs.MessageDlg('Data will be lost.'+#10+'Continue ?',
                       QDialogs.mtConfirmation,
                       [QDialogs.mbYes,QDialogs.mbNo],0) = mrYes then
  begin
    ShowMessage('Tu dies');
  end
else
  ShowMessage('Tu das');
Aber vollkommen egal, auf welchen Button ich klicke, es wird immer der Else-Zweig ausgeführt.
Speichere ich mir das Result in einer Variablen, und alsse diese Ausgeben, dann bekomme ich als Integerwert die 6 für Yes und die 7 für No. Das entspricht den Konstanten mrAbort(6) und mrRetry(7).

Verwende ich Dialogs statt QDialogs, dann funktioniert das einwandfrei.

Theoretisch kann ich jetzt natürlich einfach beide Units einbinden, aber das ist ja nicht Sinn der Sache oder ?

Grüße Blechwolf

Phoenix 16. Sep 2003 12:14

Re: mrResult von QDialogs und Dialogs
 
Probier's mal mit ID_YES oder ID_NO anstelle der mrXXX - Konstanten.

Blechwolf 16. Sep 2003 12:31

Re: mrResult von QDialogs und Dialogs
 
ID_YES liefert den gleichen Integerwert we mrYes. Insofern kein anderes Ergebnis.

Gruß
Blechwolf

jbg 16. Sep 2003 12:51

Re: mrResult von QDialogs und Dialogs
 
Du hast aber nicht zufällig die Unit Controls in der Uses-Anweisung? Denn dann kann es sein, dass mrYes aus Controls genommen wird. QDialogs liefert aber das mrYes aus QControls.

Man sollte keine VCL und CLX Units mischen.

Blechwolf 16. Sep 2003 12:57

Re: mrResult von QDialogs und Dialogs
 
Bingo :o)

jbg 16. Sep 2003 13:45

Re: mrResult von QDialogs und Dialogs
 
Es war die einzige "Lösung", die dieses Problem hervorrufen konnte.


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:26 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz