HIRO's.NET

VB.NET, C#, PowerShell Tipsサイト

 VB.NET, C#, PowerShellを使用しているエンジニアのためのサイト。

 基本的な使用方法から開発で役立つTipsまで幅広く取り扱っています。

HIRO's.NET RSSHIRO's.NET RSS


VB.NET 2005の開発でお困りのことはありませんか?
そんな悩みは当サイトで解決!!

HOME > VB.NET 2005 Tips > コントロール > PowerPacks2.0 Tips メニュー

06.Shapeコントロールの動的追加

UPDATE:2007/09/02 

<< 前のTips  次のTips >>

 

 実はシェイプコントロールはツールボックスからドラッグ&ドロップしたとき、フォームに直接追加されるわけではありません。

 ドラッグ&ドロップを行うと、自動でShapeContainerが追加され、その上に貼り付けられます。

 プログラムから動的に追加を行うには
1. シェイプコントロールを表示するにはSahpeContainerが必要
2. シェイプコントロールの親をShapeContainerにする
3. SapeContainerの親をFormにする

 
サンプル
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    '1 シェイプコントロールを表示するにはSahpeContainerが必要
    Dim canvas As New Microsoft.VisualBasic.PowerPacks.ShapeContainer

    Dim rec As New Microsoft.VisualBasic.PowerPacks.RectangleShape
    rec.FillColor = System.Drawing.SystemColors.ControlDark
    rec.FillGradientColor = System.Drawing.Color.Maroon
    rec.FillGradientStyle = Microsoft.VisualBasic.PowerPacks.FillGradientStyle.None
    rec.FillStyle = PowerPacks.FillStyle.Wave
    rec.Location = New System.Drawing.Point(10, 10)
    rec.Name = "RectangleShape1"
    rec.Size = New System.Drawing.Size(100, 100)

    '2. シェイプコントロールの親をShapeContainerにする
    rec.Parent = canvas

    '3. SapeContainerの親をFormにする
    canvas.Parent = Me
End Sub