none
如何顯示/隱藏graphics下畫的一些圖和線? RRS feed

  • 问题

  • 新手提問

    就是用DrawLine, DrawPolygon等函數畫的圖

    我想讓它可以通過我操作讓它顯示/隱藏

    請問大大們應該如何編這個操作呢?

    2011年4月26日 1:34

答案

  • 栅格图:
    你拿着一支笔,在纸上画一条线,你能拿起来想看到,不想看到这样操作么?不行的。

    矢量图:
    你拿一根棍子,放在纸上,想看到了,就看,不想看到了,吧棍子拿掉。这当然是可以的。

    Graphics提供的是栅格影响绘制方法。如果你希望矢量化,需要自己考虑重绘背景,如果线条还有叠加,可能你需要分层的从低到上重绘。可以搜索一些C#开源的类似rose的软件。都是矢量绘图的。

     


    2011 c# mvp China. *George读起来像不像“饺子”?我爱吃饺子,我叫George。
    2011年4月26日 2:24
    版主
  •   bool IsHidden = false;
            private void Form1_Paint(object sender, PaintEventArgs e)
            {
                if (IsHidden)
                {
                    e.Graphics.DrawLine(new Pen(Color.Red), new Point(0, 0), new Point(this.Width, this.Height));
                }
            }
     随便弄个变量控制下就隐藏了,想画出来控制IsHidden 即可
    2011年4月27日 8:06

全部回复

  • 栅格图:
    你拿着一支笔,在纸上画一条线,你能拿起来想看到,不想看到这样操作么?不行的。

    矢量图:
    你拿一根棍子,放在纸上,想看到了,就看,不想看到了,吧棍子拿掉。这当然是可以的。

    Graphics提供的是栅格影响绘制方法。如果你希望矢量化,需要自己考虑重绘背景,如果线条还有叠加,可能你需要分层的从低到上重绘。可以搜索一些C#开源的类似rose的软件。都是矢量绘图的。

     


    2011 c# mvp China. *George读起来像不像“饺子”?我爱吃饺子,我叫George。
    2011年4月26日 2:24
    版主
  • 請問那些開源的軟件可以去哪找呢?

    2011年4月26日 3:26
  •   bool IsHidden = false;
            private void Form1_Paint(object sender, PaintEventArgs e)
            {
                if (IsHidden)
                {
                    e.Graphics.DrawLine(new Pen(Color.Red), new Point(0, 0), new Point(this.Width, this.Height));
                }
            }
     随便弄个变量控制下就隐藏了,想画出来控制IsHidden 即可
    2011年4月27日 8:06