| SPREAD for Windows Forms 10.0J サンプルコード集 > シェイプ > 独自のシェイプオブジェクトを作成する |
Customシェイプクラスの利用により、.NET Frameworkより提供されているSystem.Drawing名前空間の各機能を用いた独自のシェイプオブジェクトを作成することができます。また、作成されたオブジェクトはSPREADより提供されている各シェイプと同様に制御することが可能です。

![]() |
|
private void Form1_Load(object sender, System.EventArgs e) { //グラフィックを作成します System.Drawing.Point[] pts = {new System.Drawing.Point(25, 0), new System.Drawing.Point(0, 50), new System.Drawing.Point(20, 50), new System.Drawing.Point(5, 100), new System.Drawing.Point(40, 40), new System.Drawing.Point(20, 40), new System.Drawing.Point(40, 0), new System.Drawing.Point(25, 0)}; System.Drawing.Drawing2D.GraphicsPath gpath = new System.Drawing.Drawing2D.GraphicsPath(); gpath.AddPolygon(pts); //カスタムシェイプオブジェクトを作成します FarPoint.Win.Spread.DrawingSpace.CustomShape pso = new FarPoint.Win.Spread.DrawingSpace.CustomShape(); //作成したグラフィックを設定します pso.Shape = gpath; //各属性を設定します pso.SetBounds(120, 10, 120, 120); pso.BackColor = Color.Red; pso.AlphaBlendBackColor = 90; pso.ShadowColor = Color.Blue; pso.AlphaBlendShadowColor = 90; pso.ShadowDirection = FarPoint.Win.Spread.DrawingSpace.ShadowDirection.Right; pso.ShadowOffset = 5; fpSpread1.ActiveSheet.AddShape(pso); }
Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Load 'グラフィックを作成します Dim pts As System.Drawing.Point() = {New System.Drawing.Point(25, 0), _ New System.Drawing.Point(0, 50), _ New System.Drawing.Point(20, 50), _ New System.Drawing.Point(5, 100), _ New System.Drawing.Point(40, 40), _ New System.Drawing.Point(20, 40), _ New System.Drawing.Point(40, 0), _ New System.Drawing.Point(25, 0)} Dim gpath As System.Drawing.Drawing2D.GraphicsPath = New System.Drawing.Drawing2D.GraphicsPath gpath.AddPolygon(pts) 'カスタムシェイプオブジェクトを作成します Dim pso As New FarPoint.Win.Spread.DrawingSpace.CustomShape '作成したグラフィックを設定します pso.Shape = gpath '各属性を設定します pso.SetBounds(120, 10, 120, 120) pso.BackColor = Color.Red pso.AlphaBlendBackColor = 90 pso.ShadowColor = Color.Blue pso.AlphaBlendShadowColor = 90 pso.ShadowDirection = FarPoint.Win.Spread.DrawingSpace.ShadowDirection.Right pso.ShadowOffset = 5 FpSpread1.ActiveSheet.AddShape(pso) End Sub