MFCでプログラミングをしています。
SDIプログラムで、
メニューを選択すると「ある操作」をするように
作っています。
「ある操作」の中でループを回しており、
各ループ終了毎に更新結果を逐次描画させたいのですが、
うまく行きません。
ループの最後に
Invalidate(TRUE)
を書いてだめだったので、
pView->SetRedraw(TRUE);
pView->RedrawWindow();
pDoc->UpdateAllViews(NULL);
なども併用してみたのですが、
通過するだけで何もされません。
どなたかご教示よろしくお願いします。
A 回答 (5件)
- 最新から表示
- 回答順に表示
No.5
- 回答日時:
InvalidateRect(0,0,false); //画面全体に再描画を要求
似たようなプログラムを作っていたところです
HWNDを指定するところに0を渡しています
0はデスクトップ自体のHWNDを示しているので。
これで全てのウィンドウが再描画を開始します。
実証済みです
参考URL:http://www.ne.jp/asahi/nagoya/ahomaro/builder/cp …
No.4
- 回答日時:
これはもしかすると、コマンドハンドラの中にループ処理がかかれているのではないでしょうか。
その場合、コマンドハンドラから抜けなければ Invalidate(TRUE) が発行した再描画メッセージを処理するチャンスがやってきません。
定期的にコマンドハンドラからメッセージループに処理を戻してやるか、別スレッドを作成すると簡単になります。 ユーザー インターフェイス スレッド を検索してみてください。
No.3
- 回答日時:
性懲りも無くまた来ました。
API32では強制全画面アップデートを掛けたい場合、
以下の呪文?を唱えます。
hWnd = 該当ウィンドウのウィンドウハンドル
InvalidateRect( hWnd, NULL, FALSE );
UpdateWindow( hWnd );
多少のヒントになれば...
#実は全く意図と違っていたりして...m(_"_;m
No.1
- 回答日時:
MFCのクラスだとどうやるのかな...
C(API及びAPI32)の場合では、Redraw用のレクトアングル情報を与え直してからUpdateするようにしていました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Windows 10 windows10のクリーンインストールが完了出来ない 2 2022/06/04 13:33
- Windows Me・NT・2000 widows xpのエラーで利用ができなくなりました 3 2022/12/21 13:43
- JavaScript カラーミーショップのsectionループ内で、[引数][戻り値]ありの関数的な処理を行いたいです。 1 2022/05/07 19:39
- その他(プログラミング・Web制作) マウスを使用してpowershellのプログラムを起動して、引数リストを渡したい 1 2022/11/07 21:39
- Visual Basic(VBA) VBA リボンののリカバリーでオーバーフローエラーになります 2 2023/07/04 19:07
- その他(Microsoft Office) エクセルのマクロについて教えてください。 5 2023/01/21 09:39
- iPad iPad で Apple Pencil を使いメモアプリで文字をキーボードから打ち込みたいのですが描 2 2022/10/05 20:49
- Visual Basic(VBA) VBAでシートの保護をかける際に「書式設定の変更」を有効にする 1 2023/04/17 18:18
- その他(プログラミング・Web制作) プログラムの勉強のおすすめは 7 2022/12/09 20:09
- JavaScript [Java] Edgeでのアドレスバー非表示について 3 2022/04/20 17:51
このQ&Aを見た人はこんなQ&Aも見ています
-
好きな人を振り向かせるためにしたこと
大好きな人と会話のきっかけを少しでも作りたい、意識してもらいたい…! 振り向かせるためにどんなことをしたことがありますか?
-
歳とったな〜〜と思ったことは?
歳とったな〜〜〜、老いたな〜〜と思った具体的な瞬間はありますか?
-
自分独自の健康法はある?
こうしていると調子がいい!みたいな自分独自の健康法、こだわりはありますか?
-
AIツールの活用方法を教えて
みなさんは普段どのような場面でAIツール(ChatGPTなど)を活用していますか?
-
【選手権お題その2】この漫画の2コマ目を考えてください
サッカーのワンシーンを切り取った1コマ目。果たして2コマ目にはどんな展開になるのか教えてください。
-
CStringのFindで文字列検索を行いたいのですが
C言語・C++・C#
-
MFCでOnPaintのタイミング
C言語・C++・C#
-
CString から LPCTSTRの型に変換
C言語・C++・C#
-
-
4
UpdateData( FALSE); による文字列データの表示更新(VC++6.0)
C言語・C++・C#
-
5
ダイアログ内コントロールの位置取得について
C言語・C++・C#
-
6
CStringからchar*への型変換について教えてください。
C言語・C++・C#
-
7
ボタンの表示の色、フォントを変更したい
C言語・C++・C#
-
8
CStringをwchar_tに変換したい
C言語・C++・C#
-
9
エディットボックスのフォントを変えたい
C言語・C++・C#
-
10
InvalidateRectの使い方について
C言語・C++・C#
-
11
テキストボックスからフォーカス外す
C言語・C++・C#
-
12
CFileDialogの最初のディレクトリ設定
C言語・C++・C#
-
13
エディットボックスの入力制限について
C言語・C++・C#
-
14
MFC ダイアログ上のID取得について
C言語・C++・C#
-
15
MFCダイアログボックスを最前面に表示
C言語・C++・C#
-
16
エディットコントロールの色の変更方法
C言語・C++・C#
-
17
CString型 全角半角を意識せずに「1文字」ずつ取り出す
C言語・C++・C#
-
18
ダイアログベースの再描画について
C言語・C++・C#
-
19
リソースエディタでスタティックテキストの文字サイズの変更
C言語・C++・C#
-
20
CStringの文字列検索&抜き出しについて
C言語・C++・C#
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・「みんな教えて! 選手権!!」開催のお知らせ
- ・漫画をレンタルでお得に読める!
- ・「これいらなくない?」という慣習、教えてください
- ・今から楽しみな予定はありますか?
- ・AIツールの活用方法を教えて
- ・【選手権お題その3】この画像で一言【大喜利】
- ・【お題】逆襲の桃太郎
- ・自分独自の健康法はある?
- ・最強の防寒、あったか術を教えてください!
- ・【大喜利】【投稿~1/9】 忍者がやってるYouTubeが炎上してしまった理由
- ・歳とったな〜〜と思ったことは?
- ・ちょっと先の未来クイズ第6問
- ・モテ期を経験した方いらっしゃいますか?
- ・好きな人を振り向かせるためにしたこと
- ・【選手権お題その2】この漫画の2コマ目を考えてください
- ・【選手権お題その1】これってもしかして自分だけかもしれないな…と思うあるあるを教えてください
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・これまでで一番「情けなかったとき」はいつですか?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・14歳の自分に衝撃の事実を告げてください
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
画面を強制的に再描画させる方法
-
Escキーを押すと、中断する時と...
-
DoEventsが必要な理由について
-
VBAでの一時停止と再開の方法
-
ListBox 複数選択 で オートフ...
-
VBA for i=1 to lastrow
-
イベントの発生を待つ
-
乱数の桁数指定、または範囲指定。
-
Do whileでExitせず、ループの...
-
ループフリー
-
UWSCの終了の仕方
-
null 参照の例外が実行時に発生...
-
pythonでファイルのコメント行...
-
sscanfより速い方法について。
-
レインボー色ってどうやって表...
-
GIFアニメをループさせたくない
-
WHILE (CHKIMG(”A.bmp”)=FALSE)...
-
範囲指定したセルを1つずつ飛...
-
.htaccessがループしてる?それ...
-
エディットボックスのテキスト...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
画面を強制的に再描画させる方法
-
UWSCの終了の仕方
-
DoEventsが必要な理由について
-
VBAでの一時停止と再開の方法
-
Escキーを押すと、中断する時と...
-
範囲指定したセルを1つずつ飛...
-
DOSコマンドのループ内のTIMEコ...
-
vb.netからエクセル関数書き込み
-
vb.netです。2次元配列の要素を...
-
VBAで3秒だけ時間を止めたい
-
アクティブセルから、A列最終行...
-
VBA for i=1 to lastrow
-
Do whileでExitせず、ループの...
-
乱数の桁数指定、または範囲指定。
-
CSVファイルの特定の行だけを読...
-
VB2010でCSVファイルの読み込み
-
テキストボックスの名前に変数...
-
UWSCに制限時間を付けたいです
-
イベントの発生を待つ
-
ボタンが押された時にループか...
おすすめ情報