Avatar billede fundus Nybegynder
05. januar 2009 - 16:45 Der er 7 kommentarer og
1 løsning

Form close

Hej :)

Har et lille problem. Nogle som ved med en lille kode hvor dan jeg kan få en meddelse frem hvor der stå "Programmet lukkes" når jeg afsluter/lukker min form/program i delphi 7. :)
Avatar billede kroning Nybegynder
05. januar 2009 - 17:00 #1
I din Object Inspector indsætter du koden:
ShowMessage('Programmet lukkes');

for din main form.
Avatar billede kroning Nybegynder
05. januar 2009 - 17:00 #2
Dvs.:

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
    ShowMessage('Programmet lukkes');
end;
Avatar billede fundus Nybegynder
05. januar 2009 - 17:08 #3
Alså vis jeg bare sætter:

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
    ShowMessage('Programmet lukkes');
end;

Og sætter "procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
" ind i type, så kommer fejlen "Expected '=' '(' found."
Avatar billede fundus Nybegynder
05. januar 2009 - 17:14 #4
Har denne kode, men programmet starter, men beskeden kommer ikke når jeg lukker :S

unit Unit1;

interface

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

type
  TForm1 = class(TForm)
  procedure FormClose(Sender : TObject; var Action : TCloseAction);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormClose(Sender : TObject; var Action : TCloseAction);
begin
    ShowMessage('Programmet lukkes');
end;

end.
Avatar billede kroning Nybegynder
05. januar 2009 - 17:17 #5
Så kommer det trin for trin:
Jeg får ud fra at du kører med standart opsætning i delphi 7.

Marker din form (TForm) ved at klikke på den således at der til venstre i "Object Inspector" vinduet står "Form1  TForm1" øverst. Hvis du har givet din form et navn så står det i stedet for Form1.

Klik på Events fanen i "Object Inspector" vinduet.

Dobbelt klik til højre for "OnClose" i "Object Inspector" vinduet. Der vil nu automatisk blive oprettet en procedure der hedder DinFormNavn.FormClose(Sender: TObject; var Action: TCloseAction);

Der hvor mus makøren nu står indsætter du:
ShowMessage('Programmet lukkes');
altså mellem begin og end.
Avatar billede fundus Nybegynder
05. januar 2009 - 17:32 #6
Nice nu virker det ;P Takker mange gange :)
Avatar billede fundus Nybegynder
05. januar 2009 - 17:33 #7
Skriver du ik lige noget igen så jeg kan gide dig dine point :)
Avatar billede borrisholt Novice
06. januar 2009 - 11:05 #8
Må jeg ikke lige have lov til at rette en lille fejl i koden. Der SKULLE stå :

procedure TForm1.FormClose(Sender : TObject; var Action : TCloseAction);
begin
  if Action = caFree then
    ShowMessage('Programmet lukkes');
end;
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester