質問させていただきます。
WindowsSDKを用いて、画面を作成しています。
MFCは使用していません。
タブを使っていますが、タブは作成時にTCS_OWNERDRAWFIXEDを指定しています。
WM_DRAWITEMメッセージが来たら、タブを描画していますが
どうしてもちらつきが目立ってしまいます。
WM_DRAWITEMでの処理は、初めにタブの裏画面に描画し
最後にタブに通知された、DRAWITEMSTRUCTのhDCに裏画面の内容をBitBltで転送しています。
メイン画面もダブルバッファリングを行っておりますが、メイン画面はちらついていません。
タブ側で、WM_ERASEBKGNDで何もせずreturnすると、ちらつきはなくなりますが
背景色で塗りつぶされなくなるため、タブが表示される箇所にウィンドウを上に置いたりすると
そこが残ってしまいます。
WM_DRAWITEMが頻繁によばれているため、これはちらついているのでしょうか?
解消方法に頭を悩ませております。
どうぞご教授の程お願いいたします。
No.2ベストアンサー
- 回答日時:
>DRAWITEMSTRUCTのrcItemですが、きちんと、渡されたleft,top,right,bottomに収めて描画はしております。
そうすると…チラ付きはやはりWM_ERASEBKGNDが関係していることになる…でしょうね。
WM_DRAWITEMの前に毎回WM_ERASEBKGNDが来る…ということはないかと思われますが、その辺りはどうなんでしょう?
Spy++などで確認できるかと思われますが…。
再描画に1回だけ…であれば、WM_ERASEBKGNDの時にタブ以外の場所を裏画面から描画することで回避できませんかね。
タブ部分はWM_DRAWITEMで描画しますし。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- タブレット パソコンから液タブと液晶に同じ画面を出したいのですが・・ 1 2023/01/18 16:53
- Android(アンドロイド) Android端末(arrows we FCG01)のタブの切り替え方について 2 2023/01/02 10:59
- その他(パソコン・周辺機器) 適切なペンタブ(液タブ)を購入する方法が分かりません。 3 2023/06/24 10:44
- Chrome(クローム) windowsでgooglechromeを開いたとき小さくなって出てくる 4 2022/12/04 12:42
- タブレット 液タブを購入したのですがパソコンと上手く繋がらず困っています。 huionのkamvas13です。 6 2022/07/17 19:11
- 美術・アート 液タブかsurface proか、作画作業の面だけで比較をお願いします 2 2022/07/10 01:48
- その他(ブラウザ) Microsoft Edge のタブ 2 2022/05/21 16:07
- Chrome(クローム) youtubeのサムネイルを縦4列配列にしたい。 1 2023/03/09 22:35
- Chrome(クローム) Chromeが強制終了 1 2023/01/29 09:54
- その他(ブラウザ) エッジのスタート画面について 2 2022/08/17 11:12
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VB6,リストボックスの特定行の...
-
MFCでOnPaintのタイミング
-
TextBoxに文字を書いても表示さ...
-
UpdateData( FALSE); による文...
-
CScrollViewの使用方法について
-
PCで「使用可能な場合はグラフ...
-
この二つの違いは・・・?
-
VC++でカーソルを固定する
-
他のプロセスの描画領域を再描画
-
gnuplotのフリーズについて
-
楕円を描くプログラミング
-
ボタン形のラベル
-
InvalidateRectの使い方について
-
panelのスクロール表示について
-
ビットマップを表示させる(MFC)
-
C++にて、塗りつぶされた円を描...
-
Windowのちらつき防止
-
ダイアログベースの再描画について
-
パソコンの画面は何コマ送りで...
-
当たり判定
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VB6,リストボックスの特定行の...
-
[VB.net] DataGridViewの列ヘッ...
-
NVIDIAのシェーダーキャッシュ
-
MFCでOnPaintのタイミング
-
TextBoxに文字を書いても表示さ...
-
word
-
UpdateData( FALSE); による文...
-
VC++プログラムをつかったBMP画...
-
InvalidateRectの使い方について
-
StretchBlt関数について
-
OneNote 2010 文字と描画がずれる
-
C# ラバーバンドの描画を快適に...
-
エクセルでガンチャートを作成...
-
C++にて、塗りつぶされた円を描...
-
VBAにGDI+を参照させる方法
-
MFC DrawText 背景色とフォント
-
GDI+で高速な描画
-
MFCのタイマーのつかい方を教え...
-
Labelの文字をスクロールする際...
-
FlexGridの一部のみ表示を更新...
おすすめ情報