タイトル : Re^3: フォームのResizeイベントについて 投稿日 : 2006/02/09(Thu) 21:02 投稿者 : しょうだい
花ちゃん、アドバイスありがとうございます。 > 試してはいないのでゴミレスかも知れませんが、SuspendLayout メソッド は > 使えないでしょうか? SuspendLayout メソッドでもうまくいかないようです。 使い方が間違っているのかもしれませんが。ちなみに以下のようにしてみました。 Public Sub Main() Dim frm As Form1 frm = New Form1 frm.SuspendLayout() System.Windows.Forms.Application.Run(frm) ← ここで Load イベントの前に End Sub Reseize イベントが発生してしまう。 > 又、Resizeイベントが発生すると何かまずい事があるのでしょうか? > それによっては別の対処方法があるかも。 フォームの Load イベントの中で PictureBox などのコントロールの初期設定 をしていて、フォームの Resize イベントの中で PictureBox の再描画などを しています。その為、Load イベントの前に Resize イベントが発生すると、 コントロールが初期設定されていないので、おかしくなってしまうのです。 それで、現在は、単純な方法なのですが、グローバルのフラグ変数を使って、 上記ソースの Sub Main() の最初に ON にして、フォームの load イベント の最後で OFF にし、Resize イベントの最初でそのフラグを見て処理するか しないかの判断をしています。 とりあえずは現状で支障はないのですが、どうもすっきりせず、自分自身納得 がいかなかったので、何かわかればと投稿させて頂きました。 |