Thema: Delphi Minimieren statt Beenden

Einzelnen Beitrag anzeigen

Mat

Registriert seit: 27. Mai 2003
Ort: Hönow
104 Beiträge
 
Delphi 7 Professional
 
#20
  Alt 1. Jun 2003, 00:17
mmh.. mit dem link hat's irgendwie nich gefunzt..


ich hab mir heute mal cooltrayicon angeschaut.. in der demo davon gab's auch diese funktion, die hab ich uebernommen und es funktioniert..
(versteh das zwar nich unbedingt, aber es geht.

Delphi-Quellcode:
  private
    SessionEnding: Boolean;
    procedure WMQueryEndSession(var Message: TMessage); message WM_QUERYENDSESSION;

procedure TForm_Main.WMQueryEndSession(var Message: TMessage);
begin
  SessionEnding := True;
  Message.Result := 1;
end;
meine OnCloseQuery-Funktion sieht dann so aus:
Delphi-Quellcode:
procedure TForm_Main.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
var
      msg: Integer;
     text: String;
  askexit: Boolean;
begin

  askexit := True;
  if reg_minonx and (not ExitButtonWasClicked) then
    askexit := False;

  if askexit then
    begin
      text := 'Wollen Sie wirklich beenden?';
      msg := Application.MessageBox(Pointer(text), 'Beenden', MB_YESNO + MB_DEFBUTTON2 + MB_ICONQUESTION);

      if msg = IDYES then
        CanClose := True
      else
        CanClose := False;
    end
  else
      CanClose := False;

  if reg_minonx and (not ExitButtonWasClicked) then
    Application.Minimize;


  ExitButtonWasClicked := False;

  if SessionEnding then
    CanClose := True;


end;
wenn ich jetzt windows beende, wird nicht das Programm einfach geschlossen, ohne Abfrage, einfach so. Genau wie ich es haben will



Mat
  Mit Zitat antworten Zitat