ControlPaint クラス
アセンブリ: System.Windows.Forms (system.windows.forms.dll 内)
![構文](http://weblio.hs.llnwd.net/e7/img/dict/msdnc/minus.gif)
![解説](http://weblio.hs.llnwd.net/e7/img/dict/msdnc/minus.gif)
ControlPaint クラスに含まれるメソッドを使用すると、独自のコントロールまたはコントロールの要素を描画できます。コントロールについて UserPaint ビットを true に設定すると、独自のコントロールを描画できるようになります。GetStyle メソッドまたは SetStyle メソッドを呼び出すと、そのスタイル ビットを取得または設定できます。任意のコントロールについて複数のスタイル ビットを設定できます。ControlStyles 列挙体メンバは、ビットごとの演算と組み合わせることができます。
![使用例](http://weblio.hs.llnwd.net/e7/img/dict/msdnc/minus.gif)
ControlPaint のコンストラクタの 1 つを使用して、フラットな Button コントロールを描画するコード例を次に示します。
Imports System Imports System.Drawing Imports System.Windows.Forms Public Class Form1 Inherits System.Windows.Forms.Form Private button1 As System.Windows.Forms.Button = New Button Private button2 As System.Windows.Forms.Button = New Button <System.STAThreadAttribute()> _ Public Shared Sub Main() System.Windows.Forms.Application.Run(New Form1) End Sub Public Sub New() Me.button2.Location = New Point(0, button1.Height + 10) AddHandler Me.button2.Click, AddressOf Me.button2_Click Me.Controls.Add(Me.button1) Me.Controls.Add(Me.button2) End Sub Private Sub button2_Click(sender As Object, e As System.EventArgs) ' Draws a flat button on button1. ControlPaint.DrawButton(System.Drawing.Graphics.FromHwnd(button1.Handle), 0, 0, button1.Width, button1.Height, ButtonState.Flat) End Sub 'button2_Click End Class
using System; using System.Drawing; using System.Windows.Forms; public class Form1 : Form { private Button button1 = new Button(); private Button button2 = new Button(); [STAThread] static void Main() { Application.Run(new Form1()); } public Form1(){ this.button2.Location = new Point(0, button1.Height + 10); this.Click += new EventHandler(this.button2_Click); this.Controls.Add(this.button1); this.Controls.Add(this.button2); } private void button2_Click(object sender, System.EventArgs e) { // Draws a flat button on button1. ControlPaint.DrawButton( System.Drawing.Graphics.FromHwnd(button1.Handle),0,0,button1.Width,button1.Height , ButtonState.Flat); } }
#using <System.dll> #using <System.Drawing.dll> #using <System.Windows.Forms.dll> using namespace System; using namespace System::Drawing; using namespace System::Windows::Forms; public ref class Form1: public Form { private: Button^ button1; Button^ button2; public: Form1() { button1 = gcnew Button; button2 = gcnew Button; this->button2->Location = Point(0,button1->Height + 10); this->Click += gcnew EventHandler( this, &Form1::button2_Click ); this->Controls->Add( this->button1 ); this->Controls->Add( this->button2 ); } private: void button2_Click( Object^ /*sender*/, System::EventArgs^ /*e*/ ) { // Draws a flat button on button1. ControlPaint::DrawButton( System::Drawing::Graphics::FromHwnd( button1->Handle ), 0, 0, button1->Width, button1->Height, ButtonState::Flat ); } }; [STAThread] void main() { Application::Run( gcnew Form1 ); }
import System.*; import System.Drawing.*; import System.Windows.Forms.*; public class Form1 extends Form { private Button button1 = new Button(); private Button button2 = new Button(); /** @attribute STAThread() */ public static void main(String[] args) { Application.Run(new Form1()); } //main public Form1() { this.button2.set_Location(new Point(0, button1.get_Height() + 10)); this.add_Click(new EventHandler(this.button2_Click)); this.get_Controls().Add(this.button1); this.get_Controls().Add(this.button2); } //Form1 private void button2_Click(Object sender, System.EventArgs e) { // Draws a flat button on button1. ControlPaint.DrawButton(System.Drawing.Graphics.FromHwnd( button1.get_Handle()), 0, 0, button1.get_Width(), button1.get_Height(), ButtonState.Flat); } //button2_Click } //Form1
![継承階層](http://weblio.hs.llnwd.net/e7/img/dict/msdnc/minus.gif)
System.Windows.Forms.ControlPaint
![スレッド セーフ](http://weblio.hs.llnwd.net/e7/img/dict/msdnc/minus.gif)
![プラットフォーム](http://weblio.hs.llnwd.net/e7/img/dict/msdnc/minus.gif)
Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。
![バージョン情報](http://weblio.hs.llnwd.net/e7/img/dict/msdnc/minus.gif)
![参照](http://weblio.hs.llnwd.net/e7/img/dict/msdnc/minus.gif)
- ControlPaint クラスのページへのリンク