1

タスクバーの Vista のウィンドウにカーソルを合わせると、小さなプレビューが表示されるのでとても気に入っています。ビデオの場合は、サムネイルでも再生されます。

この小さなウィンドウを「切り離して」、画面の「常に一番上に」サムネイルとして残しておきたいと思うことがよくあります。多分それは私が見ているプログレスバーかもしれませんし、ちょっとしたプレビューが欲しいビデオかもしれません.

これは、DWM によってプログラミングが容易になるようなものではないでしょうか。これは、マネージされた C# でプログラミングする単純な試みでしょうか。

このようなコードを作成する方法について、既存のソリューションとポインターの両方に興味があります。

4

3 に答える 3

3

こちらこそ自己宣伝失礼します。:)すべてのトップレベルウィンドウを複製して、プレビューを「常に一番上」に保つことができるアプリが既にあることに言及するだけです: OnTopReplica

このプログラムは、いくつかの DWM ラッパーを含む .NET (c#) ライブラリであるWindows Forms Aeroライブラリに基づいています。トリッキーな API は必要ありません (さらに、API は非常にシンプルです)。

于 2009-08-12T17:13:00.777 に答える
2

C# でこれを使用する方法の非常に良いプレビュー:

http://community.bartdesmet.net/blogs/bart/archive/2006/10/05/4495.aspx

于 2009-05-12T08:38:58.810 に答える
1

はい、独自のタスクバーのようなサムネイルを作成できます。ただし、かなりの量のウィンドウ ハンドル操作を行う必要があります。それがどのように機能するかは、基本的に、フォームにサムネイルになる子ウィンドウを作成することです。通常のトリックを使用して、サムネイルが必要なトップレベル ウィンドウのウィンドウ ハンドルを取得します。次に、DWM 関数 DWMRegisterThumbnail を呼び出して、2 つを関連付けます。サムネイルの描画には実際にはまったく関与しません。ウィンドウが関連付けられると、DWM 合成プロセスがフォームの最上位ウィンドウのサムネイルを描画します。

MSDN ドキュメント

于 2009-02-15T11:30:24.867 に答える