所以我试图将pictureBox移到面板上。问题在于,图片框不会落在鼠标的坐标上,而是落在其他地方。

    private void pictureBox1_MouseDown(object sender, MouseEventArgs e)
    {
        pictureBox1.DoDragDrop(pictureBox1,DragDropEffects.Copy);
    }

    private void panel1_DragEnter(object sender, DragEventArgs e)
    {
        e.Effect = DragDropEffects.Copy;

    }

    private void panel1_DragDrop(object sender, DragEventArgs e)
    {
        e.Effect = DragDropEffects.Copy;
        pictureBox1.Location = new Point(e.X,e.Y);
    }


我的代码有什么问题?

最佳答案

e.Xe.Y代表屏幕坐标,看来您正在寻找客户端坐标。

pictureBox1.Location = panel1.PointToClient(new Point(e.X, e.Y));

08-25 08:04