求流畅的C#移动代码,我的来回移动了几次桌面就出了"影子"如何去掉呢?
调用API
using System.Runtime.InteropServices;
[DllImport("user32.dll")]
public static extern bool ReleaseCapture();
[DllImport("user32.dll")]
public static extern bool SendMessage(IntPtr hwnd, int wMsg, int wParam, int lParam);
public const int WM_SYSCOMMAND = 0x0112;
public const int SC_MOVE = 0xF010;
public const int HTCAPTION = 0x0002;
在空间的_MouseDown中加入如下代码:
如:
private void Form1_MouseDown(object sender, System.Windows.Forms.MouseEventArgs e)
{
ReleaseCapture();
SendMessage(this.Handle, WM_SYSCOMMAND, SC_MOVE + HTCAPTION, 0);
}
如果这种方式还是不行的话,个人认为原因有3
其一:你窗体或者窗体上的控件的代码有问题
其二:你电脑配置有问题
其三:接其二原因,是否因为你电脑配置差,为提高电脑的性能而把一些效果给关闭了?
本人Win7系统,计算机-【右键】属性-【选择 高级 选项卡】高级-【性能】设置