Entwickler-Ecke

Grafische Benutzeroberflächen (VCL & FireMonkey) - Frames delphi 7 mit Button öffnen


kevinmeister - Fr 16.03.12 18:17
Titel: Frames delphi 7 mit Button öffnen
ich habe einen Frame erstellt in welchem gefragt wird ob man das programm wirklich schließen möchte diesen möchte ich durch den Button "Beenden" öffnen!

kann mir einer sagen wie ich das machen muss wenn möglich den Quelltext für den Button dazuschreiben der frame ist schon so programmiert das er alles schließt!

danke für hilfe

:gruebel: :les: :lupe:


bummi - Fr 16.03.12 18:43

Bist Du sicher dass Du ein Frame meinst, mit CloseButton meinst Du das rot X in der rechten oberen Ecke?

Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
procedure TForm2.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
    CanClose := CloseAble;
    if not CloseAble and Not Assigned(FCloseFrame) then
      begin
        FCloseFrame := TFrame3.Create(self);
        FCloseFrame.Parent := self;
      end;
end;


kevinmeister - Fr 16.03.12 18:51

user profile iconbummi hat folgendes geschrieben Zum zitierten Posting springen:
Bist Du sicher dass Du ein Frame meinst, mit CloseButton meinst Du das rot X in der rechten oberen Ecke?

Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
procedure TForm2.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
    CanClose := CloseAble;
    if not CloseAble and Not Assigned(FCloseFrame) then
      begin
        FCloseFrame := TFrame3.Create(self);
        FCloseFrame.Parent := self;
      end;
end;


nein ich habe in Delphi einen Button kreiert der das ganze schließt
denn möchte ich so umfunktioneren das er in dem frame landet welcher fragt ob man es wirklich schließen will
so wie bei word und so anderen programmen.


bummi - Fr 16.03.12 19:02

Also kein Frame sonder einen Dialog

Delphi-Quelltext
1:
  If MessageDLG('Anwendung beenden?',mtConfirmation,[mbyes,mbCancel],0)=idYes then Close;                    


kevinmeister - Sa 17.03.12 20:57

user profile iconbummi hat folgendes geschrieben Zum zitierten Posting springen:
Also kein Frame sonder einen Dialog

Delphi-Quelltext
1:
  If MessageDLG('Anwendung beenden?',mtConfirmation,[mbyes,mbCancel],0)=idYes then Close;                    


kannst du den quelltext kurz erklären


Blawen - Sa 17.03.12 21:20

user profile iconkevinmeister hat folgendes geschrieben Zum zitierten Posting springen:

Delphi-Quelltext
1:
  If MessageDLG('Anwendung beenden?',mtConfirmation,[mbyes,mbCancel],0)=idYes then Close;                    

kannst du den quelltext kurz erklären

- Es geht ein Dialogfenster mit der Frage "Anwendung beenden?" auf.
- mtConfirmation zeichnet ein grünes Fragezeichen.
- Zur Auswahl steht "Ja" (mbYes) und "Nein" (mbNo), wobei der Button "Ja" vorselektiert ist (0 = 1. Button 1 = "Ja", 1 = 2. Button = "Nein", usw.).
- Da es sich um eine Function handelt, wird ein Rückgabewert zurückgeliefert, wenn dieser "idYes" ist (= Ja-Button), wird die Anwendung beendet (then close);

:idea:
Wenn Du über einen Befehl etwas wissen willst, genügt es, diesen im Quelltext zu selektieren und danach die F1-Taste zu drücken.
Danach wird alles Wissenswerte darüber ausgegeben.