Lukke-menu

Tags:    delphi

Hello...

Hvordan dælen laver man en dialogboks der spørger om man virkeligt vil lukke programmet eller ej, når man trykker på krydses i øverste højre hjørne...?

Har selv prøvet med onclose-proceduren, hvor jeg bare har indsat en messagedlg...
Virker ikke! -> Programmet lukker inden dialogen åbner. Det betyder at man ikke selv kan angive hvornår der skal lukkes og hvornår der ikke skal...

Er der nogen der kan hjælpe... Altså bare en menu hvor man ved programmets ende kan have forskellige valgmuligheder, før programmet stopper...

På forhånd tak...!



3 svar postet i denne tråd vises herunder
1 indlæg har modtaget i alt 2 karma
Sorter efter stemmer Sorter efter dato
Hello...

Hvordan dælen laver man en dialogboks der spørger om man virkeligt vil lukke programmet eller ej, når man trykker på krydses i øverste højre hjørne...?

Har selv prøvet med onclose-proceduren, hvor jeg bare har indsat en messagedlg...
Virker ikke! -> Programmet lukker inden dialogen åbner. Det betyder at man ikke selv kan angive hvornår der skal lukkes og hvornår der ikke skal...

Er der nogen der kan hjælpe... Altså bare en menu hvor man ved programmets ende kan have forskellige valgmuligheder, før programmet stopper...

På forhånd tak...!


En mulighed

<pre>
procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
var
res: integer;
begin
res := MessageDlg('Vil du gemme før du lukker?', mtWarning, mbYesNoCancel, 0);
case res of
ID_YES : ; //Indsæt kode der skal eksekveres hvis brugeren trykker på "Yes"
ID_NO : ; //Denne skal være tom(der skal jo ik ske noget når vi skal ud!)
ID_CANCEL : Abort;
end;
end;
</pre>[Redigeret d. 04/03-03 22:26:54 af Casper Steinmann]



Hello...

Hvordan dælen laver man en dialogboks der spørger om man virkeligt vil lukke programmet eller ej, når man trykker på krydses i øverste højre hjørne...?

Har selv prøvet med onclose-proceduren, hvor jeg bare har indsat en messagedlg...
Virker ikke! -> Programmet lukker inden dialogen åbner. Det betyder at man ikke selv kan angive hvornår der skal lukkes og hvornår der ikke skal...

Er der nogen der kan hjælpe... Altså bare en menu hvor man ved programmets ende kan have forskellige valgmuligheder, før programmet stopper...

På forhånd tak...!


Følgende i en OnClose event virker nu fint:

<pre>
if MessageDlg('Vil du lukke programmet?', mtConfirmation, [mbYes,mbNo], 0) = mrNo then
Action := caNone;
</pre>



Hello...

Hvordan dælen laver man en dialogboks der spørger om man virkeligt vil lukke programmet eller ej, når man trykker på krydses i øverste højre hjørne...?

Har selv prøvet med onclose-proceduren, hvor jeg bare har indsat en messagedlg...
Virker ikke! -> Programmet lukker inden dialogen åbner. Det betyder at man ikke selv kan angive hvornår der skal lukkes og hvornår der ikke skal...

Er der nogen der kan hjælpe... Altså bare en menu hvor man ved programmets ende kan have forskellige valgmuligheder, før programmet stopper...

På forhånd tak...!


Du kan bruge OnCLoseQuery i stedet. En af parametrene er en variabel der skal sættes true/false, alt efter om programmet må lukke eller ej.

/data




t