- PR -

TextBoxのBackColorについて

投稿者投稿内容
きくちゃん
ぬし
会議室デビュー日: 2003/08/01
投稿数: 854
お住まい・勤務地: 都内某所
投稿日時: 2004-01-30 09:55
極端にコントロールが多くなくても、フォームの描画がパラパラと順次行われていく様子が見えて、「ちょっと美しくないな〜」と思う事はあります。
で、既出かも知れませんが、以下のような解決してます。

コード:

Public Sub New()
MyBase.New()
' この呼び出しは Windows フォーム デザイナで必要です。
InitializeComponent()
' InitializeComponent() 呼び出しの後に初期化を追加します。
Me.Opacity = 0
End Sub

Private Sub Form1_Paint(ByVal sender As Object, _
ByVal e As System.Windows.Forms.PaintEventArgs) _
Handles MyBase.Paint
RemoveHandler Me.Paint, AddressOf Me.Form1_Paint '← 2006-12-13 追記
Application.DoEvents()
Me.Opacity = 1

End Sub



ちなみに、Form.Opacity プロパティの説明には、
引用:

このプロパティは、レイヤード ウィンドウを表示できないプラットフォームでは無効です。


とあります。


[ メッセージ編集済み 編集者: きくちゃん 編集日時 2006-12-13 20:51 ]
T3HKYM
会議室デビュー日: 2004/01/29
投稿数: 15
投稿日時: 2004-01-30 10:03
「きくちゃん」さん
ありがとうございました。
無事、解決いたしました。
きくちゃん
ぬし
会議室デビュー日: 2003/08/01
投稿数: 854
お住まい・勤務地: 都内某所
投稿日時: 2004-01-30 12:33
T3HKYMさん、こんにちは。

引用:

無事、解決いたしました。


念のために補足しますが、前回提示したコードはあくまでもサンプルなので、適切に修正して下さい。あのままだとFormのPaintイベントが発生するたびに Form1_Paint が実行されてしまいますので...。

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