AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

MessageDlg schließen

Ein Thema von Smeivel · begonnen am 30. Mai 2006 · letzter Beitrag vom 30. Mai 2006
Antwort Antwort
Smeivel

Registriert seit: 18. Apr 2006
Ort: Wolfhagen
29 Beiträge
 
#1

MessageDlg schließen

  Alt 30. Mai 2006, 20:04
Hallo erst mal an alle!
Ich habe zuerst mal ein Problem mit dem Message Dialog und zwar möchte ich den messageDlg beenden können wenn ich auf NEIN klicke, doch hab ich nirgendwo einen passenden quellcode gefunden der einen MessageDlg schließen kann. Wenn ich auf ja klicke soll das ganze Programm geschlossen werden, doch passiert das mit folgendem code wenn ich auf NEIN klicke , dies sollte doch normalerweise andersherum sein.
Delphi-Quellcode:
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
   Case MessageDlg('sicher?',mtconfirmation,[mbYes,mbNO,mbCancel],0) Of
       mrYes : Form1.Close;
       mrNo : //???;
   end;
end;
  Mit Zitat antworten Zitat
Benutzerbild von toms
toms
(CodeLib-Manager)

Registriert seit: 10. Jun 2002
4.648 Beiträge
 
Delphi XE Professional
 
#2

Re: MessageDlg schließen

  Alt 30. Mai 2006, 20:06
Hallo,


Was passiert, wenn du der Action etwas zuweist?
Thomas
  Mit Zitat antworten Zitat
Benutzerbild von Martin K
Martin K

Registriert seit: 20. Okt 2005
919 Beiträge
 
Turbo Delphi für Win32
 
#3

Re: MessageDlg schließen

  Alt 30. Mai 2006, 20:11
Hi,

nimm mal OnCloseQuery anstatt OnClose.
Mit CanClose kannst Du dann festlegen, ob die Form geschlossen werden soll oder nicht:

Delphi-Quellcode:
procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
  CanClose := MessageDlg('sicher?',mtconfirmation,[mbYes,mbNO,mbCancel],0) = mrYes;
end;
Mit den Menschen ist es wie mit Computern -
es gibt Nullen und Einsen.
  Mit Zitat antworten Zitat
Benutzerbild von Cyberbob
Cyberbob

Registriert seit: 24. Jan 2005
Ort: Karben
626 Beiträge
 
Delphi XE7 Architect
 
#4

Re: MessageDlg schließen

  Alt 30. Mai 2006, 20:13
Ist eine möglichkeit. Mit OnClose gehts aber auch! Etwa so:

Delphi-Quellcode:
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
   if MessageDlg('sicher?',mtconfirmation,[mbYes,mbNO,mbCancel],0) = mrNo then Action := caNone;
end;
So wird das Programm nur geschlossen, wenn auf Ja geklickt wird.
Christian
  Mit Zitat antworten Zitat
Benutzerbild von faux
faux

Registriert seit: 18. Apr 2004
Ort: Linz
2.044 Beiträge
 
Turbo Delphi für Win32
 
#5

Re: MessageDlg schließen

  Alt 30. Mai 2006, 20:17
Zitat von Cyberbob:
Ist eine möglichkeit. Mit OnClose gehts aber auch!
Wieso sollte man absichtlich ein anderes Event benutzen wenn man es mit einem extra dafür geschaffenen Event auch lösen kann?

Grüße
Faux
Faux Manuel
Wer weiß, dass er nichts weiß, weiß mehr, als der der nicht weiß, dass er nichts weiß.
GoTrillian
  Mit Zitat antworten Zitat
Hawkeye219

Registriert seit: 18. Feb 2006
Ort: Stolberg
2.227 Beiträge
 
Delphi 2010 Professional
 
#6

Re: MessageDlg schließen

  Alt 30. Mai 2006, 20:17
Zitat von Cyberbob:
So wird das Programm nur geschlossen, wenn auf Ja geklickt wird.
...oder der Benutzer den Dialog abbricht.

Gruß Hawkeye
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:38 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