radianの備忘録

プログラミングやPCに関する事をメモ代わりに残していきます

独自メッセージボックス

特に更新するネタも無かったので放置してました。 相変わらずWinFormプログラムばかり書いています。Windows標準のメッセージボックスはOS標準のフォントサイズで表示されるのですが、最近はタブレットやタッチパネル用途のプログラムを作る事もあり、文字が…

ネイティブDLLやCOMを使う

.NET環境に移行しても、昔からあるネイティブDLLやCOMを利用したくなる事が時々ありますが、その場合に知っていたほうが良いこと等を書いていきます。(1) 文字列の受け渡し CharSetを適切に指定すれば、String型でやりとり可能です。WinAPIでAnsi版、Unicode…

WPFという選択肢

さて、ここまでWinFormsで色々載せておきながら、半透明や見た目がリッチなアプリを簡単に作る方法があります。それがWPFです。WPFのコントロールだと、Opacity指定するだけで、こんな簡単に半透明化出来ちゃいます。WPFは、Windows標準のコントロールではな…

LabelコントロールのAutoSizeの初期値をFalseにする方法

LabelコントロールのAutoSizeプロパティは、何故かデフォルト値がFalseに設定されているにも関わらず、デザイナー画面で貼り付るとTrueに設定されてしまいます。Labelを継承したコントロールで、コンストラクタでAutoSize=Falseにすれば簡単に出来るんじゃね…

半透明なコントロールを作成する

通常、コントロールは透過色をサポートしていませんが、コントロール作成時にいくつか設定を行うことで透過色を使うことが出来るようになります。https://1drv.ms/u/s!AiiVDEkK6bacgVnsGluZPiwBHy98デモプログラムを用意してみました。 下のスライダーを動か…

プロパティの既定値を設定する

カスタムコントロールに独自のプロパティを実装しておくと、Visual Studioのデザイナ画面で値を設定出来るようになって便利です。今回は、フォーカス時に背景色を黄色(LemonChiffon)に変更するTextBoxを考えてみましょう。 Public Class TextBoxEx Inherit…

Win7でProgressBarの表示が遅延する

Win7環境で(おそらくVistaも)、ビジュアルスタイルを有効にした状態で、一定速度以上でProgressBarのValue値をセットすると、セットしたValue値とProgressBarの表示が同期しません。 デモプログラムを用意してみました。 https://1drv.ms/u/s!AiiVDEkK6bac…

書き込みテスト

テスト。