Wie einfach ist es in DWM, um eine zu machen ‚immer oben‘ Thumbnail für ein vorhandenes Fenster
-
23-08-2019 - |
Frage
Ich mag, wenn Sie über ein Fenster in Vista auf der Taskleiste schweben und es gibt Ihnen eine kleine Vorschau. wenn es spielt Video es auch in der Miniaturansicht.
Oft wünschte wirklich, ich könnte ich dieses kleine Fenster ‚abreißen‘ und halten es als ‚immer oben‘ Thumbnail auf meinem Bildschirm. Vielleicht ist es ein Fortschrittsbalken Ich beobachte, vielleicht ist es ein Video, das ich von einer kleinen winzigen Vorschau will.
Ist das nicht die Art der Sache, dass DWM es einfach zu programmieren macht. Wäre dies ein einfaches Unterfangen in schön managed C # zu programmieren - oder würde ich am Ende immer alle in kniffligen API Sachen verzetteln
Ich interessiere mich für beide bestehenden Lösungen und Hinweise, wie man so etwas codieren.
Lösung
Eine sehr gute Vorschau, wie diese zu verwenden, in C #:
http://community.bartdesmet.net /blogs/bart/archive/2006/10/05/4495.aspx
Andere Tipps
Sorry für die Eigenwerbung hier. :) Nur zu erwähnen, gibt es bereits eine App, die Sie jedes Fenster der obersten Ebene zu klonen und ihre Vorschau halten „always on top“: OnTopReplica .
Das Programm basiert auf dem Windows Forms Aero Bibliothek, .NET (c #) Bibliothek, die umfasst einig DWM-Wrapper. Keine heikle API Sachen benötigt (neben der API ist ziemlich einfach sowieso).
Ja, Sie können Ihre eigene Taskleiste ähnliche Thumbnails erstellen. Du wirst zwar ziemlich viel Fenstergriff Manipulation zu tun haben. Wie es funktioniert, ist im Grunde, dass Sie ein Kind-Fenster in Ihrem Formular erstellen, das die Miniatur sein wird. Sie obtian den Fenstergriff der Top-Level-Fenster, das Sie ein Miniaturbild wollen die üblichen Tricks zu verwenden. Dann Sie eine DWM-Funktion DWMRegisterThumbnail nennen sich die beiden zu verbinden. Sie erhalten nicht wirklich involviert die Vorschau auf alle in der Malerei - sobald die Fenster zugeordnet sind, die DWM-Compositing-Prozess Pflege nimmt in dem Formular eine Miniaturansicht der Fenster der obersten Ebene der Malerei.