簡體   English   中英

在具有固定位置C#Windows窗體的兩個圖片框之間畫一條線

[英]Draw a line between two pictureboxes that have fixed positions c# windows form

我正在一個項目中,我應該在兩個圖片框之間畫一條線。

請注意,我知道如何獲取每個圖片框的坐標,但是我不知道使用哪種方法在它們之間畫線。

到目前為止,這是我的代碼:

Point p1, p2;
        public Form1()
        {
            InitializeComponent();
            int x = pictureBox1.Location.X;
            MessageBox.Show(x.ToString());
            p1.X = pictureBox1.Location.X;
            p1.Y = pictureBox1.Location.Y;
            p2.X = pictureBox2.Location.X;
            p2.Y = pictureBox2.Location.Y;
        }

感謝任何幫助!

希望這個能對您有所幫助

pointArray[iNumberofClicks].X = e.X;
pointArray[iNumberofClicks].Y = e.Y;
Pen PenSpikes = new Pen(Color.Green);
SolidBrush solidBrush = new SolidBrush(Color.Blue);
iNumberofClicks++;
if (iNumberofClicks > 1)
{
  Point[] CurrentpointArray = new Point[iNumberofClicks];

  for (int i = 0; i < iNumberofClicks; i++)
  {
    CurrentpointArray[i].X = pointArray[i].X;
    CurrentpointArray[i].Y = pointArray[i].Y;
  }

  Bitmap canvas = new Bitmap(pictureBox1.Width, pictureBox1.Height);
  Graphics offScreenDC = Graphics.FromImage(canvas);
  // New line!
  offScreenDC.DrawImage(pictureBox1.Image, new Point());
  offScreenDC.DrawLines(PenSpikes, CurrentpointArray);

  pictureBox1.Image = canvas;
  offScreenDC.Dispose();
}
private void pictureBox1_MouseDown(object sender, MouseEventArgs e)
{
    if (e.Button == MouseButtons.Left)
    {
        points.Add(e.Location);
        pictureBox1.Invalidate();
    }
}

private void pictureBox1_Paint(object sender, PaintEventArgs e)
{enter code here
    if (points.Count > 1)
       e.Graphics.DrawLines(Pens.Black, points.ToArray());
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM