« 2005年11月 | トップページ | 2006年2月 »

2006年1月26日 (木)

VC7でコマンドラインでソリューションをビルドする。(VC6でMakefile生成の代替手段)

Devenv コマンド ライン スイッチ

| | コメント (0)

2006年1月21日 (土)

仮想リストビューのカラム幅の自動調節

オーナードローリストビュー(ひょっとしたら仮想リストビューかも)でヘッダーの区切り(ディバイダー)をダブルクリックしてカラム幅を自動調節しようとすると、仮想リストではなく、実リストビューの中身を見に行って、中身が何もなくて、幅がほぼ0になってしまう。

そこでHDN_DIVIDERDBLCLICKで正しい幅に設定してやろうとするとできるのだが、いったん幅0になった後に設定したサイズになる。つまり幅0になるのをHDN_DIVIDERDBLCLICKだけではとめられない。散々調べた範囲ではこれはまともにはとめようがない。

が、たとえば要素が0個とか1個のリストビューでカラム幅自動調節をしようとすると一瞬幅0になるものの、すぐに指定のサイズになる。そこで自動調節時にオーナードローを一時停止させればいったん幅が0になっているのがわからないくらい高速に自動調節できる。

そのためにはリストビューのヘッダーコントロールをサブクラス化し、WM_LBUTTONDBLCLKが来たらオーナードローを一時停止して、HDN_DIVIDERDBLCLICKで幅を設定する直前にオーナードローを再び再開するようにすればよい。

| | コメント (0) | トラックバック (0)

« 2005年11月 | トップページ | 2006年2月 »