Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Schließen Button (https://www.delphipraxis.net/173530-schliessen-button.html)

mkinzler 1. Mär 2013 11:45

AW: Schließen Button
 
Zitat:

Zitat von lbccaleb (Beitrag 1205580)
Du musst den Parameter CanClose auswerten!

Nein Setzen, denn es ist ein OUT Paramter

Davidlocke13 1. Mär 2013 12:09

AW: Schließen Button
 
Jo und gleich wieder ein neuer Fehler ;-)

"Aus einem Sichtbaren Fenster kann kein modales gemacht werden"

und wenn ich dann nur Form3.Show; mache passiert nix mehr nicht mal ein Fehler !

mkinzler 1. Mär 2013 12:13

AW: Schließen Button
 
Zeig mal den kompletten Source der Methode

Davidlocke13 1. Mär 2013 12:19

AW: Schließen Button
 
Delphi-Quellcode:
unit Unit2;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Menus, ExtCtrls, StdCtrls;

type
  TForm2 = class(TForm)
    MainMenu1: TMainMenu;
    Datei1: TMenuItem;
    Panel1: TPanel;
    Lsung1: TMenuItem;
    Be1: TMenuItem;
    Button1: TButton;
    Button2: TButton;
    Button3: TButton;
    Button4: TButton;
    Button5: TButton;
    Button6: TButton;
    Button7: TButton;
    Button8: TButton;
    Button9: TButton;
    Button10: TButton;
    Button11: TButton;
    Button12: TButton;
    Button13: TButton;
    Button14: TButton;
    Button15: TButton;
    Button16: TButton;
    Button17: TButton;
    Button18: TButton;
    Button19: TButton;
    Button20: TButton;
    Button21: TButton;
    Button22: TButton;
    Button23: TButton;
    Button24: TButton;
    Button25: TButton;
    Button26: TButton;
    procedure Be1Click(Sender: TObject);
    procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form2: TForm2;

implementation

uses Unit3;

{$R *.dfm}

procedure TForm2.Be1Click(Sender: TObject);
begin
  Form3.ShowModal;
end;

procedure TForm2.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
  Form3.ShowModal;
  canClose := false;
end;

end.
und

Delphi-Quellcode:
unit Unit3;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm3 = class(TForm)
    BtnJa: TButton;
    LabelBeenden: TLabel;
    BtnNein: TButton;
    procedure BtnJaClick(Sender: TObject);
    procedure BtnNeinClick(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form3: TForm3;

implementation

uses Unit2;

{$R *.dfm}

procedure TForm3.BtnJaClick(Sender: TObject);
begin
  close;
  Form2.close;
end;

procedure TForm3.BtnNeinClick(Sender: TObject);
begin
  close;
end;

end.

mkinzler 1. Mär 2013 12:23

AW: Schließen Button
 
Schmeiß den Code aus Form3 raus, setzte die Cancel-Eigenschaft den Nein-Buttons.

Delphi-Quellcode:
procedure TForm2.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
  if Form3.ShowModal = mrCancel then canClose := false;
end;

DeddyH 1. Mär 2013 13:36

AW: Schließen Button
 
Vielleicht besser andersherum:
Delphi-Quellcode:
procedure TForm2.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
  canClose := Form3.ShowModal = mrOK;
end;
IIRC käme nämlich beim Schließen von Form3 über "X" oder Alt-F4 mrAbort zurück.


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:13 Uhr.
Seite 2 von 2     12   

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