0

System.ArgumentException:“参数无效。”

这是我第一次尝试使用矩阵和转换。随便...

protected override void OnPaint(PaintEventArgs e)
        {
            Graphics g = e.Graphics;
            g.Transform = m_Vars.TransformMatrix;
            g.Clear (m_Vars.ClearColor);

            g.FillRectangle (m_Vars.FillBrush , m_Vars.DrawRectangle);
            g.DrawRectangle (m_Vars.LinePen , m_Vars.DrawRectangle);

            if (m_Vars.DrawCrossSection)
            {
                g.DrawLine (m_Vars.LinePen , m_Vars.DrawRectangle_TopMidpoint , m_Vars.DrawRectangle_BottomMidpoint);
                g.DrawLine (m_Vars.LinePen , m_Vars.DrawRectangle_LeftMidpoint , m_Vars.DrawRectangle_RightMidpoint);
            }

            Invalidate ();
        }

在“g.Transform = m_Vars.TransformMatrix”处引发异常。Locals 揭示了我想要的 -new- 矩阵有 6 个值:0.1、0.0 0.0、0.0 0.0、0.0

-- 当我创建这个替换变换矩阵时,我使用“new Matrix()”来创建一个单位矩阵。

我的新矩阵是问题还是 System.Drawing 问题?另外,也许有任何解决方法?

4

0 回答 0