在Form.OnPaint中设置“ System.Drawing.Graphics.Transform”会产生ArgumentException

时间:2019-03-19 09:13:11

标签: c# system.drawing.graphics

System.ArgumentException:'参数无效。'

这是我第一次尝试使用Matrix和转换玩具。 任何人...

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”处引发异常。 当地人透露我想要的-new-矩阵有6个值: 0.1、0.0 0.0、0.0 0.0、0.0

- 创建此替换变换矩阵时,将使用“ new Matrix()”创建一个单位矩阵。

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

0 个答案:

没有答案