問題タブ [aero]
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.
c# - Vista/Win7 のエアロ効果は WPF に含まれていますか?
BlurEffect と同じように、自分のコントロールでその効果を使用できますか? 利用できない場合、それを「取得」する方法はありますか? もしかしてリフレクター経由?
wpf - Windows クラシック テーマで無効なリストボックスの背景色を変更する
Windows クラシック テーマを使用して実行する必要がある WPF アプリケーションを開発しています。アプリケーションは、ListBox を含むダイアログ ボックスを作成します。ダイアログ ボックスが表示されたら、入力を受け入れる前に 1 秒間無効にする必要があります。スタイルトリガーでこれを達成していますが、うまくいきます。ただし、ListBox を無効にすると白い背景が表示され、これを取り除くことができないようです。aero テーマを使用する場合、次のスタイル リソースで問題が修正されます。
ただし、Windows クラシック テーマを使用すると、白い背景が再び表示されます。クラシックテーマの状況を改善するにはどうすればよいですか???
c# - Windows Aero areas in own C# Applications
I'm wondering about that many new applications, I think most built in WPF, has this really cool Windows Aero Glass interfaces.
For example Seesmic or the upcoming Firefox 3.7
(source: crenk.com)
Searching in the internet most time it looks like you need a hack to realize this. But seriously: I don't think big software development teams use hacks to roll out their huge used products.
So my question is: Windows Aero Glass Areas - How to do?
Is it only possible with a hack?
Maybe it's just one property, i don't know. I'm WinForms developer so I never tested out WPF. But my Google search didn't look like It is easier with WPF.
windows-7 - .NET Framework 4.0 と Aero Glass の問題に関する描画
私のアプリケーションでは、フォーム クライアント領域の一部が Aero フレームに描画されるように、DWM API のメソッド DwmExtendFrameIntoClientArea を使用して Aero グラス タイトル バーの高さを拡張することで調整するフォームがあります。この効果を実現するために、多くのオンライン記事が示唆しているように、ガラス フレームの「上」にあるクライアント領域の部分に黒い長方形を描画して、透明に見えるようにします。これは Windows Vista/Windows 7 ではうまく機能しましたが、VS 2010 をダウンロードし、アプリケーションをビルドするためのターゲット フレームワークとして .NET Framework 4.0 を使用したため、このアプローチは機能しなくなりました。問題は、黒い四角形が表示されることです。つまり、Aero ガラスに描画すると、黒い色が透明と見なされなくなります。何が問題なのか、それをどのように克服できるのか、誰かが考えていますか?
windows - OpenGL ゲームで Aero DWM Glass をオフに切り替える
私は数年前に無料のゲームを書きました: http://www.walkover.org . ロビーとメニューについては、win32 のような通常のダイアログを使用します。実際のゲームが起動すると、OpenGL が使用されます。
現在、Windows 7 では、実際のゲームが開始されると Windows エアロ ガラスがオフになり、ゲームが終了すると再びオンになります。
これを防ぐためにできることはありますか?ガラスがオンになっている場合にガラスをオンにしておく特別なフラグはありますか? (新しいものについては、私は DirectX を使用していますが、これは発生しません。) どこかで指定しなければならない (新しい) フラグがあるのでしょうか?
私はこのpixelformatdescriptorを使用しています:
c# - GDIテキスト関数を呼び出した後にアルファ値を修正するにはどうすればよいですか?
Aeroガラス効果を使用するアプリケーションがあるため、各ピクセルには、赤、緑、青の値に加えてアルファ値があります。背景が白一色(アルファ= 255)のカスタム描画コントロールが1つあります。GDIテキスト関数を使用してコントロールにソリッドテキストを描画したいと思います。ただし、これらの関数はアルファ値を任意の値に設定するため、アプリケーションの下にあるウィンドウがテキストに半透明で表示されます。
テキストのレンダリングを呼び出した後、コントロール内のすべてのピクセルを調べて、それらのアルファ値を255に戻したいと思います。これを行うための最良の方法は何ですか?
BitBlt
、、、GetPixel
およびSetPixel
関数については運がありませんでした。彼らはアルファ値に気づいていないように見えます。
これが私が検討して拒否した他の解決策です:
- ビットマップに描画してから、ビットマップをデバイスにコピーします。このアプローチでは、テキストレンダリングはモニターの特性(ClearTextなど)を利用しません。GDIでテキストをビットマップにレンダリングする方法を知っている場合は、画面にレンダリングするのとまったく同じように、それで問題が解決します。
- テキストレンダリングにGDI+を使用する:このアプリケーションは、元々テキストレンダリングにGDI +を使用していました(Aeroサポートの作業を開始する前)。GDI +で文字列を正確に測定しようとして問題が発生したため、GDIに切り替えました。切り替えたくない。
- 問題のコントロールを回避するようにAeroリージョンを設定します。私のアプリケーションのウィンドウは、実際には別のプロセスで実行されている別のアプリケーションの子ウィンドウです。トップレベルウィンドウのAero設定を直接制御することはできません。
アプリケーションはWindowsフォームを使用してC#で記述されていますが、私はInteropを使用してWin32API関数を呼び出すことはできません。
c# - Smooth Text On Glass
I have seen many other samples out there that draw smooth text on glass. But I can't use them. I need every single label that gets added at runtime to be smooth. I can't just "draw" text onto the screen.
Is this at all possible, and are there and sources around?
Thank you
c# - Windows Vista/7の透明色の変更
さて、マイクロソフトが透明度に使用することを決めた色は黒だと聞きました。これは、Glassの表面に描画/配置したときに黒いテキストが表示されない理由を説明します。
透明色(黒)をマゼンタに戻すのは理にかなっているのではないでしょうか。なぜ彼らはこれを再びしなかったのですか?この色を変えることさえ可能ですか?
delphi - Delphi 7 アプリケーションでの Aero Glass の問題
Aero Glass をサポートするために、古いプロジェクトのいくつかを作り直そうとしています。グラス フレームを有効にするのは簡単ですが、いくつかの大きな問題に遭遇しました。私はこのコードを使用しました:
というわけで、かわいいガラス窓を手に入れました。黒が透明色になったため (ちょっとばかげた選択、なぜピンクにできなかったのか)、clBlack であるすべてのものも透明になります。これは、すべてのラベル、編集、ボタン テキストを意味します...設計時にテキストを他の色に設定しても、DWM はそれらをその色と透明にします。
さて、私の質問は、どうにかしてこれを解決できるかどうかです。
c++ - アプリケーションで Aero Snap が機能しない
作業中のアプリケーション (Windows デスクトップ、ネイティブ C++ アプリケーション) で Aero Snap が機能しないという問題があり、何が起こっているのか少し混乱しています。箱。
最小限の win32 アプリケーションで Spy++ を使用しましたが、Win-Left を押すと次のメッセージが表示されます。
<00070> 00030D1C P WM_KEYDOWN nVirtKey:VK_LWIN cRepeat:1 ScanCode:5B fRepeat:0 fUp:0 <00071> 00030D1C P WM_KEYDOWN nVirtKey:VK_LWIN cRepeat:1 ScanCode:5B fRepeat:1 fUp:0 <00072> 00030KeyD1C P WM_KEYDOWN nVirt VK_LWIN cRepeat:1 ScanCode:5B fRepeat:1 fUp:0 <00088> 00030D1C S WM_GETMINMAXINFO lpmmi:0043FCBC
<00089> 00030D1C R WM_GETMINMAXINFO lpmmi:0043FCBC
<00090> 00030D1C S WM_WINDOWPOSCHANGING lpwp:0043FCC4
<00091> 00030D1C S WM_GETMINMAXINFO lpmmi:0043F8E8
< 00092> 00030D1C R WM_GETMINMAXINFO lmmi:0043F8E8
<00093> 00030D1C R WM_WINDOWPOSCHANGING
.. など
そのため、左キーの WM_KEYDOWN がアプリケーションに到達していないことがわかりますが、代わりにエアロ スナップの「ウィンドウのサイズ変更」が取得されています。
アプリケーションを Spy++ すると、左のキーが「傍受」されていないことがわかりますが、代わりにアプリケーションに渡されているため、スナップの良さは得られません。
<00043> 000F0F12 P WM_KEYDOWN nVirtKey:VK_LWIN cRepeat:1 ScanCode:5B fRepeat:0 fUp:0
<00044> 000F0F12 P WM_KEYDOWN nVirtKey:VK_LWIN cRepeat:1 ScanCode:5B fRepeat:1 fUp:0
<00045> 000FKey0F12 P WM_KEYDOWN nVirt VK_LWIN cRepeat:1 ScanCode:5B fRepeat:1 fUp:0
<00060> 000F0F12 P WM_KEYUP nVirtKey:VK_LEFT cRepeat:1 ScanCode:4B fRepeat:0 fUp:1
メッセージ処理のコアを掘り下げて何が起こっているかを確認しますが、得られるすべてのヒントを取り上げます:)
編集Win-Up と Win-Shift-Left/Right が実際には正しく機能することに気付きました。そのため、正しい位置/サイズに「エアロ スナップ」されていないのは Win-Down と Win-Left/Right だけです。
編集OK、問題は、ウィンドウが WS_THICKFRAME フラグで作成されていないことです。フラグを追加すると、スナップが機能します。今、私は実際に境界線を最初から望んでいませんが、少なくとも何が奇妙な動作を引き起こしているのかを知っています..
願わくば最後の編集境界線を取り除くことは、WM_NCCALCSIZE に応答して、クライアントがウィンドウ全体を占めるようにするのと同じくらい簡単でした。