問題タブ [dwm]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
165 参照

windows - ライブウィンドウ7ウィンドウのコンテンツで3D操作を行うにはどうすればよいですか?

これは基本的にスコーピングの質問です。ウィンドウのコンテンツを3Dサーフェスにレンダリングして操作する機能をどこで探すのでしょうか?つまり、 VistaDWMの3dTask Switcherのようにライブウィンドウを3dで合成し、 UIインタラクションを各ウィンドウの2Dインタラクションに変換できるシェルのようなプログラムを作成できますか?

Web上であちこちでDWM拡張機能について言及しているのを見てきましたが、それがどのように機能するかについてのリソースを見つけることができません。また、2つのウィンドウのHWNDを関連付けることによってDWMサムネイルを実装するためのガイドがありますが、ウィンドウで任意の変換を行うことはできず、表示のみです(サムネイル内のものをクリックすることはできません)。

何か案は?

0 投票する
0 に答える
1021 参照

winapi - DwmExtendFrameIntoClientAreaと最大化されたウィンドウ

クライアントエリアでガラス効果のある素敵なGUIを構築しようとしています。

そこで、ここで説明するように実装しました。

私は成功し、ガラスでいっぱいの素敵なフレームを持っていますが、ウィンドウが最大化されていない場合に限ります。ウィンドウを最大化すると、黒だけになります:-(

いくつかのグーグルと実験で、私が次のような応答でウィンドウを無効にすると、私は理解しましたWM_WINDOWPOSCHANGING

ウィンドウを最大化したときにもガラス効果が得られます。

奇妙なことに、これは、タイトルバーをダブルクリックするか、ウィンドウの右上隅にある最大化ボタンをダブルクリックした場合にのみ機能します。しかし、ウィンドウを画面の上部に移動してそこにスナップさせてウィンドウを最大化すると(Aero Snap)、ウィンドウは真っ黒になります。

誰かがこれが正しく行われる方法を知っていますか?

(私はWindows 7 64ビットで開発しています。)

編集:

また、標準のタイトルバーを削除したいので、メッセージ0に応答して戻ることで削除しWM_NCCALCSIZEます。これがなければ、すべてが正常に機能しています。

編集:

基本的に同じである別のシステムでのテストは成功しました。唯一の顕著な違いは、AMD RadeonHD5870の代わりにAMDRadeonHD 4300という別のグラフィックカードがあることです。これは、グラフィックカードのドライバーに問題があるのでしょうか。

0 投票する
3 に答える
1364 参照

windows-7 - Windows 7 の透明性が失われ、DWM が正しく機能しない

Microsoft ( http://windows.microsoft.com/hr-HR/windows/downloads/snowflakes-and-frost-theme )から新しいテーマをインストールした後、私の Windows 7 はすべての透過性 (Aero) 効果を失い、Windows Basic を実際のテーマ。私は今、自分の問題を 1 時間グーグルで調べてきましたが、解決策が見つかりませんでした。この問題を修正する試みはすべて失敗しました。

  1. 透過性の問題を修正するための標準ウィザードを実行してみましたが、応答がありました。 デスクトップ ウィンドウ マネージャーが無効になっています。 デスクトップ ウィンドウ マネージャー サービスは常に実行されています。アクティブなプロセスのリストに dwm.exe が表示されます。DWM と Themes サービスを停止/開始しようとしましたが、効果がありませんでした。
  2. システムの復元を実行してみましたが、問題は解決しませんでした。
  3. 私は常にアバスト アンチウイルスを使用しており、ディスクをスキャンしましたが、ウイルスはありません。
  4. ATI から最新のドライバをインストールしましたが、これも役に立ちませんでした。

Windowsを再インストールする以外に何をすべきかわかりません(これは、派手な透明効果を得るためだけに行うことではありません)

0 投票する
0 に答える
293 参照

windows - Windows フリップ 3D で全画面表示のアプリが黒い四角形として表示される (Win + Tab キーを押す)

フルスクリーン モードに切り替えることができる DirectX アプリケーションがあります。フルスクリーン モードで Win+TAB を押すと、Aero Flip 3D インターフェイスが表示されますが、アプリケーションのサムネイルは黒い四角形です。

興味深いことに、この質問は以前に尋ねられており、質問者は答えに満足しているようですが、そこにリンクされている MSDN の記事では、Aero Flip 3D で使用するためにサムネイルを Windows にフィードする方法が実際には説明されていません...

0 投票する
1 に答える
1158 参照

vb.net - dwm の色付けを変更する - Windows 7

現在、Windows 7 で DWM ウィンドウの色付けの色を流動的に変更するプログラムを VB.NET で作成しようとしています。

最初にレジストリ値を直接編集しようとしましたが、UXSMS サービスを再起動する必要がありました。タスクバーのトグルが原因で、この解決策は満足のいくものではありませんでした。

ウィンドウの色を設定するときにコントロールパネルの動作を再現できるuser32.dllやなどのDLLの関数を探しています。themecpl.dll

私は現在、適切な機能を探しているIDAにいます(CColorCplPage::SetDwmColorizationColor良さそうです!)。持ってる人いたらシェアお願いします!

(画面やコードが必要な場合は、お問い合わせください。下手な英語で申し訳ありません。)

0 投票する
1 に答える
315 参照

delphi - 拡張 GlassFrame での視覚的な動作の悪さ

私には解決できない重大な問題があります。

実際に何が起こるかを単純化するために、質問を編集しています。

  1. 空の Delphi アプリケーションを作成します (2007 年にこれを試しました)。

  2. フォーム コンストラクター (From.Create) で次のように入力します。

    /li>

これにより、Windows Aero テーマが拡張されます。

ここでウィンドウのサイズを変更してみると、悪い動作に気付くでしょう。かなり醜く見える黒い部分。

これはWindowsのバグですか?

API呼び出しを使用してMS VCで同じことを試しましたが、結果は同じです。

とにかく、それが Windows のバグである場合、どうにかしてそれを解決しなければなりません。なぜなら、アプリケーションでこのような見栄えが悪くなってしまう可能性があるからです。

助けてくれてありがとう。

0 投票する
4 に答える
376 参照

windows - Windows に、システム全体の色反転 (ナイト モード) を可能にするメカニズムはありますか?

私のお気に入りの Mac OSX アプリの 1 つは、Blacktree の Nocturne です。これは、画面全体の色を反転させて、暗い部屋で目に優しい、システム全体が白地に黒のディスプレイになるようにします。例。

調べてみたところ、現在 Windows でこれを行う方法はないようです。あなたが得ることができる最も近いものは、ほとんどのアプリが無視する暗いテーマです(とにかく問題を解決しません-以下のポールの回答に対する私のコメントを参照してください)、または単純に明るさを下げるF.luxやFriendeyeのようなアプリです色設定を変更しましたが、実際に画面全体の色を反転させるものは何も見つかりませんでした.

私の質問は、Windows でこれを行うアプリケーションを作成することさえ可能ですか? DWM、NVIDIA ドライバー、またはグラフィック サブシステムの他の部分には、レンダリングされたイメージをそのような基本レベルで操作できる API がありますか? どこにいるでしょうか?

0 投票する
1 に答える
3798 参照

delphi - Windows 7 フリップ 3D が有効になっている場合でもフォームを常に手前に表示する方法

特定のフォームを常に一番上に表示する必要があるアプリを構築しています (これは顧客の要求です)。これまでのところ、HWND_TOPMOST 値を指定してSetWindowPos関数を使用しており、正常に動作しますが、Windows 7 の Flip 3D 機能がアクティブ化されたアプリがトップに留まりません。

Windows 7 フリップ 3D

ここに画像の説明を入力

問題は、Windows 7 フリップ 3D が有効になっている場合でも、フォームを他のすべてのウィンドウの上に表示するにはどうすればよいかということです。

0 投票する
3 に答える
1833 参照

c# - 開いているIEタブをDWMサムネイルとして表示するにはどうすればよいですか?

C#でWPFアプリケーションを構築していて、開いているIEタブのサムネイルをリストボックスに表示したいと思います。私は基本的にWindows7でDWM機能を複製しようとしています。

開いているIEタブを表示しているWindows7

Interop.ShDocVWを使用して開いているタブのリストを列挙する方法を理解しましたが、DWM API呼び出しを使用するには、を渡す必要がhwndあり、タブはすべてInternetExplorerと同じハンドルを共有します。

だから私はいじっていEnumWindowsますEnumChildWindowsが、何も動作させることができません。

これに最善のアプローチをする方法について何か提案はありますか?

0 投票する
1 に答える
589 参照

winapi - ウィンドウの後ろのぼかしでウィンドウの内容をクリアする(DWM)

を呼び出すウィンドウがありDwmExtendFrameIntoClientArea()、そのウィンドウは他の子ウィンドウをホストし、Direct2D を使用して子ウィンドウの 1 つをペイントします。黒い領域を持つビットマップが読み込まれると、その領域がぼやけます。子ウィンドウのすべてをクリアして、もう一度ペイントしたいWM_PAINTのですが、内容をクリアできないようです。

  1. を使用してクリアしようとしました

    これにより、子ウィンドウ領域が黒くなり、以前の描画がすべて消去されますが、透明度はなくなります。

  2. クライアント領域上の単なる黒いバーであるビットマップを描画しようとしました

    これにより、その前に現れたものはすべて黒くなります。

  3. 子ウィンドウ全体に黒い領域をペイントする古い GDI の方法を試してみました。

    うまくいきません。

  4. ただし、これを行わずにメイン ウィンドウのサイズを変更しようとすると、正しく機能します。つまり、前の絵が消えます。

ウィンドウを再度描画する前に手動でウィンドウをクリアする API 呼び出しまたは方法はありますか?