Einzelnen Beitrag anzeigen

EWeiss
(Gast)

n/a Beiträge
 
#10

Re: DSPack::spielt einmal->danach nicht mehr

  Alt 25. Sep 2006, 10:34
Lieber Nils

Ich sagte es ja schon.
Was mir auffällt ist das du alles doppelt machst.
Ich frage mich warum ?

Delphi-Quellcode:
    if LowerCase(ExtractFileExt(fFiles[playindex].Dateiname)) = '.wmvthen
    begin
      frmVideo.Show;
      xiStopClick(Sender);
      with frmVideo do
      begin
        if not FilterGraph.Active then
        begin
          if not FilterGraph.Active then
            FilterGraph.Active := True;
          FilterGraph.ClearGraph;
          FilterGraph.RenderFile(fFiles[playindex].pfad);
          FilterGraph.play;
          pause := True;
        end;
      end;
    end;
if not FilterGraph.Active then wird zweimal in der gleichen abfrage aufgerufen
das muss nicht sein.

Dann kannst du dir viel ärger ersparen wenn du die abfragen Play/Stop auslagerst in eine
eigens dafür erstellte Function.
Und die aufrufst wenn du ein anderes Video startest.
Ich würde im click verhalten nur das Format abfragen also *-wmv/*-avi oder was auch immer

Delphi-Quellcode:
    if LowerCase(ExtractFileExt(fFiles[playindex].Dateiname)) = '.wmvthen
    begin
      xiStopClick(Sender);
      CheckPlayState
    end;
procedure CheckPlayState()

//hier deine ganze abfrage vom aktuellen Spielstatus einfügen.

end;


Das gleiche bei

Delphi-Quellcode:
    if LowerCase(ExtractFileExt(fFiles[playindex].Dateiname)) = '.mpegthen
    begin
        xiStopClick(Sender);
        CheckPlayState
      end;
    end;
Du mußt dann die abfrage nur einmal schreiben und nicht bei jeden Dateityp doppelt.
frmVideo.Show; direkt in der ersten zeile des click events

PS: Da fällt mir noch was auf zwei die gleichen abfragen nur wegen verschiedene Formate
das geht besser. Feste Variable anlegen 'VideoTypen' VideoTypen := '.mpeg;.wmv'

Dann kannst du beide Typen mit der Variable VideoTypen abfragen und mußt nicht alles doppelt machen.

gruß
  Mit Zitat antworten Zitat