【WPF】 文字が飛び出すデスクトップアクセサリにて紹介したアプリケーションを作り直しました。タイピングの速度についていくため高速化したとともに、キー入力の際にドラムやピアノの音が出るようになりました。
ダウンロード
実行ファイル →
https://github.com/seinosuke/LaunCharCpp/releases/download/0.1.0/LaunChar.zip
ソースコード →
https://github.com/seinosuke/LaunCharCpp
動作環境
Windows10での動作を確認しました。
Windows7では背景の透過処理が行われないという問題が発生しており、現在原因を調査中です。
また、実行には DirectX のランタイムが必要となります。
「コンピューターにd3dx9_43.dllがないため、プログラムを開始できません。
この問題を解決するには、プログラムを再インストールしてみてください。」
というエラーが発生する場合は
https://www.microsoft.com/ja-jp/download/details.aspx?id=35&
からDirectXエンドユーザーランタイムWebインストーラ dxwebsetup.exe をダウンロードしてインストールを行ってください。
使い方
LaunChar.exe を起動するだけです。他のウィンドウで作業をしていると、キーボードで打った文字が画面上に飛び出してきます。
タスクバーや[Alt]+[Tab]などでLaunCharウィンドウをアクティブにし特定のキーを入力することで、文字のジャンプ力やキーの音の切り替えなどができます。
- [Alt] + [M] : キーの入力音切り替え
- [Alt] + [J] : 文字のジャンプ力切り替え
- [Alt] + [Q] : アプリケーションを終了
クレジット
ピアノ音やドラム音などのwavファイル群はフリー音楽素材魔王魂さまのものを使用しています。
(魔王魂素材利用規約)
おわりに
描画するウィンドウは最前面にセットしつつ、背景を透過しマウスイベントを貫通させています。デスクトップマスコットなど、いろいろ遊べそうな予感。Windows7で背景が透過されない問題について、7ではできるけど10では動かないみたいな話はよくありますが、その逆は初めてなので正直どうしようという感じです。
WS_EX_LAYERED | WS_EX_TRANSPARENT で CreateWindowEx()して
SetLayeredWindowAttributes(hwnd, RGB(0, 0, 128), 0, LWA_COLORKEY);
みたいにしています。
0 件のコメント:
コメントを投稿