0

有关生成错误的代码,请参见图片。我试过重新订购东西,它总是发生在第二次调用DrawArc. 我只是复制粘贴的行

g.DrawArc(SystemPens.ButtonFace, outerCircle[-1], 115, 220);

连续两次以说明错误不是由于拼写错误或计算错误而发生的。第一次运行正常,第二次出错。代码生成错误和错误消息

调用的代码ReLayout()

    public ButtonFan()
    {
        InitializeComponent();
        for (int i = 0; i < buttonLabels.Count(); i++)
        {
            buttonLabels[i] = new System.Windows.Forms.Label();
            this.buttonLabels[i].Name = "label"+i.ToString();
            this.buttonLabels[i].Size = new System.Drawing.Size(50, 23);
            this.buttonLabels[i].TabIndex = i;
            this.buttonLabels[i].Text = "label"+i.ToString();
        }
        ReLayout();
    }
4

1 回答 1

1

原来错误是在 FIRST 中产生的

g.DrawArc(SystemPens.ButtonFace, outerCircle[-1], 115, 220);

陈述。仍然不确定为什么它直到下一个才抱怨,但我发现它的方式是添加一行:

Console.WriteLine("Finished first arc");

在第一次弧线绘制之后。然后错误在Console.WriteLine. 当然Console.WriteLine没有出错,所以这意味着它必须从上一个试图将矩形调整为负大小并在其中绘制弧线的语句翻转过来。

更改[-1][150]解决问题。

于 2013-02-19T18:32:19.670 回答