
求C# 控件拖动控件代码?
我想搞一个PictureBox控件,但不知道如果才可以拖动控件,请高手指点一下拖动的同时还要有窗体的阴影,,谢谢了.!只有10分了...
我想搞一个PictureBox控件, 但不知道如果才可以拖动控件, 请高手指点一下 拖动的同时还要有窗体的阴影,, 谢谢了.! 只有10分了
展开
展开全部
拖动可以这样(Sorry,窗体阴影不知道- -):
类中添加变量:
private bool isDragging = false; //拖中
private int currentX = 0, currentY = 0; //原来鼠标X,Y坐标
然后假设PictureBox控件叫做pictureBox1。
给它添加MouseDown,MouseUp,和MouseMove事件,事件处理函数分别如下:
private void pictureBox1_MouseDown(object sender, MouseEventArgs e)
{
isDragging = true; //可以拖动
currentX = e.X;
currentY = e.Y;
}
private void pictureBox1_MouseUp(object sender, MouseEventArgs e)
{
isDragging = false;
}
private void pictureBox1_MouseMove(object sender, MouseEventArgs e)
{
if (isDragging)
{
pictureBox1.Top = pictureBox1.Top + (e.Y - currentY);
pictureBox1.Left = pictureBox1.Left + (e.X - currentX);
}
}
类中添加变量:
private bool isDragging = false; //拖中
private int currentX = 0, currentY = 0; //原来鼠标X,Y坐标
然后假设PictureBox控件叫做pictureBox1。
给它添加MouseDown,MouseUp,和MouseMove事件,事件处理函数分别如下:
private void pictureBox1_MouseDown(object sender, MouseEventArgs e)
{
isDragging = true; //可以拖动
currentX = e.X;
currentY = e.Y;
}
private void pictureBox1_MouseUp(object sender, MouseEventArgs e)
{
isDragging = false;
}
private void pictureBox1_MouseMove(object sender, MouseEventArgs e)
{
if (isDragging)
{
pictureBox1.Top = pictureBox1.Top + (e.Y - currentY);
pictureBox1.Left = pictureBox1.Left + (e.X - currentX);
}
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询