如何使多边形的大小等于窗口的大小?

时间:2014-02-06 10:22:01

标签: c# .net winforms c#-4.0

我使用Windows窗体应用程序创建了一个自定义控件(多边形)。代码是:

public partial class shape7 : Control
{

    public Point p1 { get; set; }
    public Point p2 { get; set; }
    public Point p3 { get; set; }
    public Point p4 { get; set; }

    public shape7()
    {
        InitializeComponent();
    }

    protected override void OnPaint(PaintEventArgs pe)
    {
        GraphicsPath _outline = new GraphicsPath();
        Point[] p = new Point[4]{new Point(p1.X,p1.Y),
        new Point(p2.X,p2.Y),
        new Point(p3.X,p3.Y),
        new Point(p4.X,p4.Y)};
        _outline.AddPolygon(p);            
        this.Region = new Region(_outline);
    }

,其中

p1 = 0,0
p2 = 100,0
p3 = 120,50
p4 = 20,0

它让我像这样控制:

enter image description here

正如您在Form1中看到的那样,外部虚线窗口的大小不等于我的对象多边形。

我希望如果增加窗口大小而不是对象大小也应该增加。

请建议如何执行此操作。

此外,我希望此对象的默认颜色为黑色或蓝色。

0 个答案:

没有答案