いまどきMFC−CFormViewのリサイズとコントロールのちらつき
PFU Happy Hacking Keyboard Lite2 日本語配列かな印字なし USBキーボード ブラック PD-KB220B/U
- 出版社/メーカー: PFU
- 発売日: 2004/06/17
- メディア: Personal Computers
- 購入: 6人 クリック: 127回
- この商品を含むブログ (27件) を見る
PFU Happy Hacking Keyboard Professional JP 日本語配列 墨 USBキーボード 静電容量無接点 Nキーロールオーバー ブラック PD-KB420B
- 出版社/メーカー: PFU
- 発売日: 2008/11/10
- メディア: Personal Computers
- 購入: 3人 クリック: 344回
- この商品を含むブログ (40件) を見る
PFU Happy Hacking Keyboard Lite2 日本語配列かな印字なし USBキーボード ホワイト PD-KB220W/U
- 出版社/メーカー: PFU
- 発売日: 2004/06/17
- メディア: Personal Computers
- クリック: 29回
- この商品を含むブログ (23件) を見る
プログラムを作ろう! MS VISUAL C++ 2010 入門 (MSDNプログラミングシリーズ)
- 作者: WINGSプロジェクト,山田祥寛
- 出版社/メーカー: 日経BP社
- 発売日: 2010/09/02
- メディア: 単行本
- 購入: 5人 クリック: 153回
- この商品を含むブログ (15件) を見る
体系的に学ぶ 安全なWebアプリケーションの作り方 脆弱性が生まれる原理と対策の実践
- 作者: 徳丸浩
- 出版社/メーカー: ソフトバンククリエイティブ
- 発売日: 2011/03/03
- メディア: 大型本
- 購入: 119人 クリック: 4,283回
- この商品を含むブログ (144件) を見る
- ケース
- CFormViewがリサイズされる(された)ときに中身のコントロールもリサイズ処理を行うとき
- ペアレントダイアログ(CFormViewの中身となるダイアログ)とチャイルドコントロールのスタイルを変更することで大体解決する
- WS_CLIPCHILDREN(必要に応じてWS_CLIPSIBLINGも)をスタイルに追加。以上。
- CFormViewがリサイズされる(された)ときに中身のコントロールもリサイズ処理を行うとき
この辺を検索すると、デバイスコンテキストやらビットマップやらをイジクリまわしてダブルバッファリングしろだのという記事や、SetRedrawを使えだとか、Invalidate()を使えだとかが最初山のように出てくるがほとんど必要ない。ほとんど嘘。
タブコントロールにリストをネストさせたときにこのスタイルがないことが原因でちらついて迷ったので書いておきます。
これはCWndから派生したクラスほとんどに適用できるケースでしょう。
MFCにおいて、ペアレントウィンドウとチャイルドウィンドウの関係から来る描画タイミングの複雑さをトレースすることほどドMなプレイはないのでやらないようにしましょう。ま、完全に自前でレンダリングするというのなら逆に気持ちがいいんですけどね。
- そういえば・・
- MFCのリソースエディタでUIのレイアウトを作れるが、このリソース情報がかかれているrcファイルの中では、座標やサイズがピクセル単位で記述されていない。昔から不便だなと思っていたがなぜこの仕様が残されているのだろうか?編集するには明らかにピクセル単位のほうがうれしいのだが・・