Tastatur Events an der richtigen Stelle verarbeiten

Mal wieder etwas das man wissen sollte, einen aber Unmengen Zeit kostet wenn man’s nicht weiss.

Folgendes Szenario: Windows Forms Applikation mit einer Listbox.

Ich möchte auf die Page-Up und Page-Down Tasten unabhängig von dieser ListBox auswerten.
Allerdings gehen die KeyDown Events IMMER an die ListBox, die auf ein Page-Down natürlich mit herunterscrollen reagiert, was sie aber nicht soll. Focus auf die Form des Hauptfensters setzen hilft da gar nicht.

Microsoft liefert die Erklärung: Sobald eine Form ein Control wie eine ListBox enthält, gehen die Events ausschliesslich an die Controls. Nur eine Form ohne Controls erhält Key-Events.

Dieses Verhalten zu ändern ist denkbar einfach: Man setzt die Eigenschaft KeyPreview der Form auf True!

„Tastatur Events an der richtigen Stelle verarbeiten“ weiterlesen

MKV Chapter mit directshow auslesen

Da ich ja gerade aus Unzufriedenheit über die erhältlichen hardware Mediaplayer meine eigene Player-Software für meinen Eigenbau-HTPC schreibe, verbringe ich viel Zeit mit der Suche nach Informationen zu directshow. Das hier ist das Ergebnis einer erfolgreichen Suche 😉

Ich spiele mit Vorliebe MKV’s ab. Und da in letzter Zeit immer mehr MKV’s über Chapter / Kapitel verfügen, möchte ich die natürlich auch „anspringen“ können.

Die beim Abspielen involvierten Audio- und Videodecoder wissen von den Kapiteln nichts, das ist Aufgabe des Splitters.
In meinem Fall (wie eigentlich immer) ist das der Haali Media Splitter.
Leider findet man, wann man nicht einem directshow Interface für Chapter sucht, immer wieder Referenzen auf ein Interface namens IChapterInfo.
Dummerweise gibt’s keine Beispiele, nur die Definition des Interfaces. Mangels Erfahrung mit COM bin ich hier nicht weitergekommen.

„MKV Chapter mit directshow auslesen“ weiterlesen