読者です 読者をやめる 読者になる 読者になる

SourceChord

C#とXAML好きなプログラマの備忘録。最近はWPF系の話題が中心です。

OpenCvSharpで顔検出

今度は顔検出をやってみました。

OpenCvSharpのサンプルコードをベースにちょっと書き換えただけですが、意外とシンプルなコードで書けるもんですね。

今回は程よいサンプル画像がないので、コードだけφ(..)メモメモ

続きを読む

OpenCvSharpで透視投影の補正

OpenCvSharpを使って、透視変換を行ってみました。

続きを読む

WPFでホットキーの登録

WPFでホットキーの登録を行うサンプルを書いてみました。

Win32のRegisterHotKey/UnregisterHotKeyというAPIを呼び出すことで、ホットキーの登録/登録解除ができます。
このAPIでホットキーを登録しておくと、アプリがアクティブでないときでも有効なグローバルなホットキーとなります。

続きを読む

WPF用にNotifyIconクラスをラップしてみた

C#で常駐アプリなどを作り、タスクトレイにアイコンを出す場合には、Win Formsで用意されているNotifyIconというクラスを使います。

以前、このクラスを使って常駐アプリを作る方法を↓に書きました。

この方法だと、使うたびにWinFormsのデザイナを利用して設定したりする必要があり面倒です。
ということで、NotifyIconに関する処理を1ファイルにまとめ、簡単に再利用できるようにしてみました。

今回は、以前のサンプルと比べ、以下のような点を修正してます。

  • Formsのコンポーネントクラスではなく、NotifyIconExという普通のクラスとして実装
    • Win Formsのデザイナをわざわざ使いたくなかったので、すべてC#のコードで書くように修正しました。
    • タスクトレイ関係の処理はすべてこのクラスの中に閉じ込めました。
  • メニューを、WPFのContextMenuクラスで作れるように修正
  • バルーン表示に関わる各種プロパティ/メソッドを利用できるようにラップ
  • 各種イベント類もラップ

コード一式は以下のリポジトリに上げています。
WPFSamples/NotifyIconSample at master · sourcechord/WPFSamples · GitHub

続きを読む

そのReactほんとに必要ですか?~もうすぐElectronで使えるようになるWeb Componentsの世界~

この記事はelectronアドベントカレンダー 2016 21日目の記事です。
遅くなってしまい申し訳ありません。。。

続きを読む

WPF/UWP向けに、グリッドレイアウト補助ライブラリを作ってみました~GridExtra~

この記事はXAMLアドベントカレンダー 2016 18日目の記事です。

WPF/UWP向けに、グリッドレイアウトに役立つクラス類を提供するライブラリを作りました。

今のところ、この二つのクラスだけですが、今後少しずつ色々なパネルを追加していきたいと思っています。

  • ResponsiveGrid
  • GridEx
    • Gridの行/列定義を簡単にするための各種添付プロパティ類

目次

  • 準備
  • 使い方
    • ResponsiveGrid
    • GridEx
      • 行×列の定義
      • グリッドの子要素の位置定義
      • ASCIIアート風のグリッド定義
続きを読む

.Net 4.6.2以降でのWPFのPer-Monitor DPI対応

この記事はXAMLアドベントカレンダー 2016 14日目の記事です。

WPFでは、ボタンをはじめとする各種UI要素はベクターベースでの描画を行っています。
そのため、WinFormsやMFCなどのGDI系のUIフレームワークと違い、High-DPIな環境でもボケずにキレイな描画ができる、、、と言われていました。

続きを読む