Avatar billede hlj Nybegynder
20. marts 2000 - 09:23 Der er 1 løsning

Mit Delphi program vil ikke afslutte

Jeg har et program der bruger MediaPLayer komponenten, men den opfører sig mærkelig når den skal afslutte applicationen. Applicationen lukker ikke ned.

Her er koden der skal udføres når MPEG filen er afspillet:

procedure TForm1.MediaPlayer1Notify(Sender: TObject);
begin
  Log('Mode : ' + ModeStr[MediaPlayer1.mode] + ', ' + IntToStr(integer(MediaPlayer1.mode)));
  if integer(MediaPlayer1.mode) = 1 then
  begin
    log('End of movie');
    Application.ProcessMessages;
    Application.Terminate;
    exit;
  end;
  Mediaplayer1.Notify := true;
end;

og min logfil viser korrekt følgende:

Mode : Playing, 2
Mode : Stopped, 1
End of movie

Jeg har nu prøvet næsten alt hvad jeg kan finde på, bl.a. lavet en timer der venter et øjeblik inden programmet lukkes (application.terminate) eller
brugt Form1.Close.

Application står bare med den sidste frame på skærmen.

Jeg har en slags OnClock event som se sådan ud:

procedure TForm1.AppMessage(var Msg: TMsg; var Handled: Boolean);
begin
  if Msg.message = WM_LBUTTONDOWN then
  begin
    CanClose := true;
    Handled := True;
  end;

  { for all other messages, Handled remains False }
  { so that other message handlers can respond }
  if CanClose then
    Close;
end;

Og når jeg klikker på skærmen lukkes programmet uden problemer.

Hjælp modtages gerne
Avatar billede hlj Nybegynder
20. marts 2000 - 09:43 #1
Sorry, det var endnu engang W2K der er skyld i mine problemer. På andre platforme kører det OK.

Så jeg trækker spørgsmålet igen
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