- - PR -
MDIフォームでの子画面のちらつき
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2008-03-13 10:56
はじめまして。たかはしと申します。
VB2005でMDIフォームを使用していますが 画面遷移時にカクカクとちらつきが発生しております。 MDIを使用されている方でちらつきをなくすよい方法などはありますでしょうか? 調査を進めますと、現画面(Form1とします)から次画面(Form2とします)をShowするタイミングで Form1の最大化が解除されておりました。 (Debug.PrintでWindowsState=0になっていました) そのため、Form1が一瞬上にあがって閉じるような動作となり ちらつきが発生しておりました。 対策としてSendMessageで描写を抑制したり DubbleBufferd、SetStyleプロパティを使用しても改善されませんでした。 また、Form1のCloseのタイミングやForm1のShowするタイミングを 逆にしたり、SendToBack、TopMostプロパティを使用して Form2を先に裏で表示しておいて表示しきったら Form1を閉じるなど試みましたが、結果ダメでした。 ご教授のほどよろしくお願いします。 <環境> OS:WindowsXP CPU:PenM1.5 MEM:752Mb 言語:VB2005Pro+SP1 |
|
投稿日時: 2008-11-12 00:15
自分も前に同じ問題で悩みました。
たかはしさんと同じ方法を試しましたが改善できず。 結局は、MDI 子フォームの FormBorderStyle プロパティに None、 Dock プロパティに Fill を指定するという苦肉の策をとりました。 これで「それっぽい」動作はします。 |
1