こんにちは。
.NET Tips>TabControlのタブを自分で描画する
のコーナーでTabControl自体の背景は変更することができないということ
でしたが、マイクロソフト等の他のコントロールのサンプルを元に下記のような
コードを書いてテストしてみたのですが、WndProc自体使用するのがはじめて
なので、何か問題が発生する場合やおかしい箇所があるでしょうか?
また、今はここ一箇所なので&H14と直接書いていますが、定数値の一覧が取得
できるクラス等はあるのでしょうか?
よろしくお願いします。
Imports System.Drawing
Public Class custTab
Inherits System.Windows.Forms.TabControl
Protected Overrides Sub WndProc(ByRef m As Message)
If m.Msg = &H14 Then 'WM_ERASEBKGND
Using gr As Graphics = Graphics.FromHdc(m.WParam)
Using sb As SolidBrush = New SolidBrush(Color.Blue)
gr.FillRectangle(sb, MyBase.ClientRectangle)
End Using
End Using
Return
End If
MyBase.WndProc(m)
End Sub
End Class
分類:[.NET]
こんにちは。 .NET Tips>TabControlのタブを自分で描画する のコーナーでTabControl自体の背景は変更することができないということ でしたが、マイクロソフト等の他のコントロールのサンプルを元に下記のような コードを書いてテストしてみたのですが、WndProc自体使用するのがはじめて なので、何か問題が発生する場合やおかしい箇所があるでしょうか? また、今はここ一箇所なので&H14と直接書いていますが、定数値の一覧が取得 できるクラス等はあるのでしょうか? よろしくお願いします。 Imports System.Drawing Public Class custTab Inherits System.Windows.Forms.TabControl Protected Overrides Sub WndProc(ByRef m As Message) If m.Msg = &H14 Then 'WM_ERASEBKGND Using gr As Graphics = Graphics.FromHdc(m.WParam) Using sb As SolidBrush = New SolidBrush(Color.Blue) gr.FillRectangle(sb, MyBase.ClientRectangle) End Using End Using Return End If MyBase.WndProc(m) End Sub End Class