- PR -

ダイアログ移動時の画面のちらつき

1
投稿者投稿内容
優希
ベテラン
会議室デビュー日: 2003/08/12
投稿数: 92
投稿日時: 2003-12-13 14:03
度々、お世話になります。

FormのShowDialog()メソッドについてお聞きします。
開発環境は、Visual Studio .NET 2002(VC++)、
Windowsフォームを使って行います。


以前、ご回答を頂いて親画面(EXE)と
子画面(DLL)から成るアプリケーションを作成しております。
子画面は、マーシャリングという方法で
呼び出しております。

おおまかに図にすると、以下のような感じです。
デスクトップ上全体にある感じです。
________________
| ____               |
||ボタンA|  親画面(EXE)    |
||___|               |
|                      |
| ______   _____  |
||        | |       ||
||子画面A  | |子画面B  ||
||(DLL)    | |(DLL)   ||
||_____| |_____||
|                      |
|_______________|


例えば「ボタンA」を押下とき、
以下のコードのようにダイアログを表示します。

コード:
 Form *frmBtnA = new Form();
 frmBtnA->StartPosition = FormStartPosition::Manual;	// 初期表示位置設定可
 frmBtnA->Location = Point(900, 500);         // 位置
 frmBtnA->Size = Drawing::Size(350, 400);       // サイズ
 frmBtnA->SizeGripStyle = SizeGripStyle::Show;    // サイズ変更グリップ表示
 frmBtnA->ShowDialog();



このとき、
起動したダイアログを子画面上で移動すると、
子画面A、Bの表示がおかしくなります。
おかしくなるというのは、
ダイアログを移動しているときに子画面が
何回も再描画するようにチラチラと表示されます。
・・・うまく表現できませんが。

このチラチラする不具合(?)を
なくす方法はありませんか?

ご存知の方、または
類似した掲示板があれば教えていただく思います。

宜しくお願い致します。

1

スキルアップ/キャリアアップ(JOB@IT)