【お知らせ】プログラミング記事の投稿はQiitaに移行しました。

2009-09-01から1ヶ月間の記事一覧

関数ポインタのマーシャリング

.NET Compact Framework 2.0では関数ポインタのマーシャリングがサポートされましたが、引数や戻り値の型に制限があります。boolは変換できないためNotSupportedExceptionになります。boolの代わりにintを使えば問題ありません。このことを知らずにP/Invoke…

TextBoxを流用したIME入力

IMEの状態が検出できるようになったので、内部でTextBoxを利用して独自コントロールで文字入力してみました。 ⇒ 動作確認とソースキャレットは点滅しません。カーソルキーやクリックで移動できません。編集は[Backspace]だけです。たまに変換中に文字を取り…

IMEの状態を検出

Silverlight 3でIMEの制御は、TextBoxでの有効・無効の設定しかできません。TextBox以外からIMEを利用する方法はありません。キーストロークから文字を取得(例: [Shift]+[1]→!)する方法もありません。このような状況でエディタを作ろうとすると、全部自前…

再生・一時停止・停止ボタン

デバッガもどきを作ろうとして挫折しました。後で使い回すかもしれないので、ボタンのXAMLを貼っておきます。画像ファイルを用意しなくてもアイコンが作れるのが新鮮でした。

YOPViewer.NETのデッドロック対策

【注】2010年12月10日以降、仕様変更により利用不可となりました。暗号化のため対応は不可能です。id:n7shi:20090907のコメントでmmmtokさんからページをめくるときにフリーズするというご指摘がありました。修正したものを公開します。id:n7shi:20090106の…

YOPViewer.NET 1.1 (メモリ節約版)

id:n7shi:20090201のコメントでmmmtokさんにメモリを節約する方法を教えていただきました。 次のようにBitmapのコンストラクタにformatを指定すると、使用メモリが減るようです。 new Bitmap(w, h, PixelFormat.Format16bppRgb565); 修正したものを公開しま…