none
繪圖及圖顯示文字 RRS feed

  • 問題

  • private void DrawSLine_Paint(object sender, PaintEventArgs e)
            {
                Graphics graLine = e.Graphics;
                Pen myPen = new Pen(Color.Red);
                graLine.DrawLine(myPen, 150, 50, 250, 50);
            }

     

    此程式碼可以畫了一條直線

     

    我想在指定的panel上繪畫以上的線,假設panel名為panel1,應怎樣做呢?

     

    有否辦法在座標(150,50)及座標(250,50) 顯示文字 ??

     

    例如於

    座標(150,50)顯示文字"day1"

    座標(250,50)顯示文字"day2"

    2008年1月10日 上午 10:14

所有回覆

  • ? 參考看看下面的方式

    程式碼區塊

    private void panel1_Paint(object sender, PaintEventArgs e)

            {

                Graphics graLine = e.Graphics;

                Pen myPen = new Pen(Color.Red);

                graLine.DrawString("TEST", new Font("Arial",16), Brushes.DarkGray, 150, 50);

                graLine.DrawLine(myPen, 150, 50, 250, 50);

     

            }

     

     

    Graphics.DrawString 方法

    http://msdn2.microsoft.com/zh-tw/library/system.drawing.graphics.drawstring(VS.80).aspx

    2008年1月10日 上午 11:00
  • 程式碼區塊

     

     

    private void button2_Click(object sender, EventArgs e)
            {
                PanelPaint();
            }

     

    private void PanelPaint()
    {
                Graphics  g = this.panel1.CreateGraphics();


                Font f = new Font("細明體",12);

                g.DrawString("day1",f, Brushes.Black , 150, 50);
                g.DrawString("day2",f, Brushes.Black , 250, 50);

     

                f.Dispose();
                f = null;

                g.Dispose();

                g=null ;


      }

     

     

     

     

     

    2008年1月11日 上午 01:02
  • 要在panel上繪圖,只要取得該控制項的控制手柄,就可以使用Drawing下的函式去繪圖或是把"字串"畫上去了。
    2008年1月13日 下午 03:57