Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   messagebox mit onclose?? (https://www.delphipraxis.net/200630-messagebox-mit-onclose.html)

zeina 9. Mai 2019 11:14

messagebox mit onclose??
 
Hallo,
ich habe eine Frage :
Delphi-Quellcode:

procedure TOSMap.FormActivate(Sender: TObject);
begin
if not( WebOSMaps1.Visible)then
 if MessageBox(0,'Es ist etwas Falsch geschrieben. Bitte Prüfen Sie die Adresse Richtig über',
     'project', MB_OK or MB_ICONERROR)= MB_OK then begin

  close;
  end;
end;
warum reagiert es nicht mit (close)?
wie kann ich mit MessageBox mein From close!!!!

Der schöne Günther 9. Mai 2019 11:20

AW: messagebox mit onclose??
 
Putting a
Delphi-Quellcode:
Close()
directly in the
Delphi-Quellcode:
OnActivate
event of a form sounds adventurous.

What is the point of a form when you have no chance of using it? Consider moving this to a different event.

zeina 9. Mai 2019 11:31

AW: messagebox mit onclose??
 
Zitat:

Zitat von Der schöne Günther (Beitrag 1431848)
Putting a
Delphi-Quellcode:
Close()
directly in the
Delphi-Quellcode:
OnActivate
event of a form sounds adventurous.

What is the point of a form when you have no chance of using it? Consider moving this to a different event.

mein Ziel ist,wenn ich auf (ok) Button von MessageBox clicke,Die Form close??

Jasocul 9. Mai 2019 11:46

AW: messagebox mit onclose??
 
The event will work right if you compare the correct result:
Delphi-Quellcode:

procedure TOSMap.FormActivate(Sender: TObject);
begin
if not( WebOSMaps1.Visible)then
 if MessageBox(0,'Es ist etwas Falsch geschrieben. Bitte Prüfen Sie die Adresse Richtig über',
     'project', MB_OK or MB_ICONERROR)= mrOK then begin // MB_OK <> mrOK

  close;
  end;
end;

zeina 9. Mai 2019 11:48

AW: messagebox mit onclose??
 
Zitat:

Zitat von Jasocul (Beitrag 1431853)
The event will work right if you compare the correct result:
Delphi-Quellcode:

procedure TOSMap.FormActivate(Sender: TObject);
begin
if not( WebOSMaps1.Visible)then
 if MessageBox(0,'Es ist etwas Falsch geschrieben. Bitte Prüfen Sie die Adresse Richtig über',
     'AIDA', MB_OK or MB_ICONERROR)= MB_OK then begin

  close;
  end;


was meinst du mit(you compare the correct result)???

auch funktioniert es nicht

Delphi.Narium 9. Mai 2019 11:50

AW: messagebox mit onclose??
 
Zitat:

Zitat von zeina (Beitrag 1431850)
Zitat:

Zitat von Der schöne Günther (Beitrag 1431848)
Putting a
Delphi-Quellcode:
Close()
directly in the
Delphi-Quellcode:
OnActivate
event of a form sounds adventurous.

What is the point of a form when you have no chance of using it? Consider moving this to a different event.

mein Ziel ist,wenn ich auf (ok) Button von MessageBox clicke,Die Form close??

Mal den Debugger befragt, ob die entsprechende Bedingung je erfüllt ist?

Ansonsten mal in die Hilfe schauen, welche Rückgabewerte von MessageBox beim Klick auf bestimmte Buttons geliefert wird.

Jasocul 9. Mai 2019 11:52

AW: messagebox mit onclose??
 
Look for the changes.
Your source:
Delphi-Quellcode:

procedure TOSMap.FormActivate(Sender: TObject);
begin
if not( WebOSMaps1.Visible)then
 if MessageBox(0,'Es ist etwas Falsch geschrieben. Bitte Prüfen Sie die Adresse Richtig über',
     'project', MB_OK or MB_ICONERROR)= MB_OK then begin // this line is wrong

  close;
  end;
end;
my source:
Delphi-Quellcode:

procedure TOSMap.FormActivate(Sender: TObject);
begin
if not( WebOSMaps1.Visible)then
 if MessageBox(0,'Es ist etwas Falsch geschrieben. Bitte Prüfen Sie die Adresse Richtig über',
     'project', MB_OK or MB_ICONERROR)= mrOK then begin // This line is changed

  close;
  end;
end;
The result of the MessageBox is not MB_OK. You have to compare to mrOK.

Sherlock 9. Mai 2019 11:57

AW: messagebox mit onclose??
 
Männers? Deutsche DP? :lol:

Sherlock

Der schöne Günther 9. Mai 2019 12:03

AW: messagebox mit onclose??
 
Ich dachte vielleicht haben wir nicht nur in Sachen Delphi, sondern auch in Sachen Deutsch eine Sprachbarriere... 😏

zeina 9. Mai 2019 12:07

AW: messagebox mit onclose??
 
Zitat:

Zitat von Delphi.Narium (Beitrag 1431855)
Zitat:

Zitat von zeina (Beitrag 1431850)
Zitat:

Zitat von Der schöne Günther (Beitrag 1431848)
Putting a
Delphi-Quellcode:
Close()
directly in the
Delphi-Quellcode:
OnActivate
event of a form sounds adventurous.

What is the point of a form when you have no chance of using it? Consider moving this to a different event.

mein Ziel ist,wenn ich auf (ok) Button von MessageBox clicke,Die Form close??

Mal den Debugger befragt, ob die entsprechende Bedingung je erfüllt ist?

Ansonsten mal in die Hilfe schauen, welche Rückgabewerte von MessageBox beim Klick auf bestimmte Buttons geliefert wird.


ich habe mal den Debugger befragt.Die Alle bedingung ist erfült,aber trotzdem ist die form nicht (close).Es sei denn,dass man auf (x)close klickt

DeddyH 9. Mai 2019 12:15

AW: messagebox mit onclose??
 
Nochmal: nicht auf MB_OK, sondern auf mrOK prüfen.

zeina 9. Mai 2019 12:21

AW: messagebox mit onclose??
 
Zitat:

Zitat von DeddyH (Beitrag 1431861)
Nochmal: nicht auf MB_OK, sondern auf mrOK prüfen.

es ist nicht geklappt.
ich habe mal den Debugger befragt.Die Alle bedingung ist erfült,aber trotzdem ist die form nicht (close).Es sei denn,dass man auf (x)close klickt

Delphi.Narium 9. Mai 2019 12:28

AW: messagebox mit onclose??
 
Ein Formular im OnActivate-Ereignis zu schließen, ist eine eher schlechte Idee.

Das ist so, als würdest Du die Wohnungstür, während Du sie aufmachst, gleichzeitig schließen.

Wird sie anschließend offen oder zu sein?

Wird die Zeile Close denn beim Debuggen auch angesprochen?

Wenn ja, wenn Du ab dort mal zeilenweise weiter debuggst, wo kommst Du denn dann hin?

hoika 9. Mai 2019 14:29

AW: messagebox mit onclose??
 
Hallo,

statt Close musst du
PostMessage(Handle, WM_CLOSE, 0, 0);
Exit;
nehmen.

Und ich finde, es ist eine gute Idee ;)

zeina 9. Mai 2019 16:43

AW: messagebox mit onclose??
 
Zitat:

Zitat von hoika (Beitrag 1431868)
Hallo,

statt Close musst du
PostMessage(Handle, WM_CLOSE, 0, 0);
Exit;
nehmen.

Und ich finde, es ist eine gute Idee ;)

Danke ist es funktioniert:thumb:


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:37 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