Einzelnen Beitrag anzeigen

SyntaxXx

Registriert seit: 14. Dez 2008
328 Beiträge
 
Delphi XE4 Architect
 
#1

ActiveX Non-Visual Component Events

  Alt 10. Feb 2016, 00:11
Hallo zusammen,
ich habe ein Problem.

Ich möchte den Windows Media Player in meine Anwendung einbauen, um eine .mp3 abzuspielen.
Daher möchte ich nicht die fertige Komponente nehmen, sondern das ganze Codetechnisch bewerkstelligen.
Jetzt habe ich nur das Problem, das ich nicht weiß, wie ich auf Events reagieren kann.

Nehmen wir dieses Beispiel:
https://msdn.microsoft.com/en-us/library/ms909949.aspx

Das Event OpenStateChange.
Dieses Event gibt mir zwei Parameter.
1. lOldState
Long value specifying the previous value of the OpenState property.

2. lNewState
Long value indicating the new value of the OpenState property. This event occurs only if the value of the SendOpenStateChangeEvents property is true.


Da ich jetzt aber keine Komponente habe, kann ich nicht einfach per Doppenklick auf das Event den nötigen Code erzeugen.
Zudem weiß ich gerade nicht, wie ich meine Methode an die Variable binde.


Über die Komponente sieht das so aus:
Delphi-Quellcode:
procedure TForm1.WindowsMediaPlayer1OpenStateChange(ASender: TObject;
  NewState: Integer);
begin
  if NewState = 13 then
  begin
    TrackBar1.Min := 0;
    TrackBar1.Max := round(WindowsMediaPlayer1.currentMedia.duration);
  end;
end;
Doch wie bekomme ich das jetzt ohne Komponente hin?
Ich nehme an, ich muss die Methode jetzt selbst schreiben.
Doch diese muss ich doch auch dem Objekt bekannt geben.

So in etwa:
meinPlayer.DasEvent:= MeineEventMethode Doch dann muss ich die Parameter ja angeben, die ich aber ja vom Player selbst haben will.
Ich bin gerade komplett verwirrt.


Kurz gefragt, was muss ich tun, damit ich an den Parameter "NewState" komme?
  Mit Zitat antworten Zitat