Home > Archives > 2007年02月26日

2007年02月26日

Windowsのコンボボックスのカスタム化

聞かれて調べたのでメモ.

なにやらウィンドウプロシージャを乗っ取るらしい.ただ,コンボボックス内のエディットコントロールは独立したウィンドウプロシージャを持つらしいので,

    HWND hwndEdit = GetTopWindow( hwndComboBox );

とかしてエディットコントロールのハンドラを取っとかないとはまる.あとは,GetWindowLong で元のプロシージャを取得して,SetWindowLong で新しいプロシージャを登録して,新しいプロシージャ内で CallWindowProc を使って元のプロシージャを呼べばいいらしい.

参考:

http://www.expertmg.co.jp/html/cti/vctips/control.htm

http://www.arcpit.co.jp/winapi/api_02/ap020108.htm

FizzBuzz@sed revise

抜かされていたのでもう少しコードを書き換えて小さくしてみた.10と5の最大公約数が5であることを使って5の倍数カウンタを排除して,整形部分をもう少し頭のよい書き方に変えてみた.現在144bytes.今のコードは1000までとかでも普通に動くコードなので,高々100までという問題の条件を使うともう少し縮むのかなぁ?

Home > Archives > 2007年02月26日

Search
Feeds

Page Top