Laden...

Multmediatimer.Tick >> invoke

Erstellt von Maddinel vor 12 Jahren Letzter Beitrag vor 12 Jahren 1.079 Views
Maddinel Themenstarter:in
1.371 Beiträge seit 2004
vor 12 Jahren
Multmediatimer.Tick >> invoke

Hallo,

Ich arbeite mit dem MultimediaTimer und rufe im Tick-Event eine Methode einer eigenen Klasse, in der ich die Play-Methode eines MediaPlayer-Objekts aufrufe. Dabei bekomme ich eine Invoke-Fehlermeldung beim MediaPlayer-Aufruf. Wie kann ich hier einen Invoke einbauen?

==============================
Wenn ichs wüsst', würd' ich nicht fragen!!! 😁
==============================

296 Beiträge seit 2007
vor 12 Jahren

Hallo Maddinel,

hast du schon [FAQ] Controls von Thread aktualisieren lassen (Control.Invoke/Dispatcher.Invoke) gelesen?

Ohne die Klassen genauer zu kennen ist MediaPlayer wohl ein Control und das Tick-Event wird nicht im GUI-Thread ausgelöst.

Maddinel Themenstarter:in
1.371 Beiträge seit 2004
vor 12 Jahren

Hallo,

Den FAQ Auszug kenne ich. sorry, ich hatte mich nicht ganz deutlich geäußert. Nein, MediaPlayer ist eine Framework 4 Klasse. Das Tick-Event wird im MainWindow ausgelöst. Der MediaPlayer-Aufruf findet dann aber in einer eigenen Klasse statt. Dort will der Kompiler dann aber ein Invoke für das MediaPlayer-Objekt. Laut FAQ müsste ich ja Object.Invoke aufrufen, aber wenn ich in meiner Klasse bin, was ist dann Object?

==============================
Wenn ichs wüsst', würd' ich nicht fragen!!! 😁
==============================

U
1.688 Beiträge seit 2007
vor 12 Jahren

Hallo,

was ist das genau für eine Mediaplayer-Klasse? Hat diese kein Invoke?

Ansonsten macht das Design einen seltsamen Eindruck, wenn eine "eigene" Klasse, die nichts mit der GUI zu tun hat, etwas starten soll, das etwas anzeigt. Hast Du etwas Quelltext?

49.485 Beiträge seit 2005
vor 12 Jahren

Hallo Maddinel,

Dabei bekomme ich eine Invoke-Fehlermeldung beim MediaPlayer-Aufruf.

sorry, wenn ich das mal sagen muss, aber dabei seit 2004 und immer noch nicht gelernt oder schon wieder vergessen, die exakte Fehlermeldung anzugeben. Und wie man sieht, gibt es die Regel [Hinweis] Wie poste ich richtig? Punkt 5 nicht umsonst, denn ohne die genaue Fehlermeldung kommt man schnell auf die falsche Spur. So entstehen unnötige Beiträge mit falschen Vermutungen und unnötige Nachfragen.

Also welcher Fehler kommt genau? An welcher Stelle? Wie ist der umgebene Code? In welchem Thread läuft er? Und welche Threads sind sonst noch beteiligt?

herbivore