C#拖动窗口事件
publicstaticexternboolSendMessage(IntPtrhwnd,intwMsg,intwParam,intlParam);publicconst...
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; private void Form1_MouseDown(object sender, MouseEventArgs e)
{//拖动窗体
ReleaseCapture();
SendMessage(this.Handle,WM_SYSCOMMAND,SC_MOVE+HTCAPTION, 0);
}为什么要把数值发送呢 数值有什么特定的含义。? 展开
public const int WM_SYSCOMMAND=0x0112;
public const int SC_MOVE=0xF010;
public const int HTCAPTION=0x0002; private void Form1_MouseDown(object sender, MouseEventArgs e)
{//拖动窗体
ReleaseCapture();
SendMessage(this.Handle,WM_SYSCOMMAND,SC_MOVE+HTCAPTION, 0);
}为什么要把数值发送呢 数值有什么特定的含义。? 展开
3个回答
2013-04-18
展开全部
给窗口发送SendMessage(wm_syscommand,0xf012,0),可以使鼠标在窗口的任何地方拖动都可以移动窗口
ReleaseCapture();
如果MOUSE进入,则设置MOUSE捕获。
SENDMESSAGE向系统发送移动消息,具体消息就是你的参数,因此根据参数消息的不同达到的效果就不同。所以SENDMESSAGE功能强大
ReleaseCapture();
如果MOUSE进入,则设置MOUSE捕获。
SENDMESSAGE向系统发送移动消息,具体消息就是你的参数,因此根据参数消息的不同达到的效果就不同。所以SENDMESSAGE功能强大
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
1、在“属性”窗口中,先设置MDI的父窗口的AllowDrop 属性更改为true;2、在父窗口的事件中添加下面两个事件
private void Form1_DragEnter(object sender, DragEventArgs e)
{
if (e.Data.GetDataPresent(DataFormats.FileDrop))
e.Effect = DragDropEffects.All;
else
e.Effect = DragDropEffects.None;
}
private void Form1_DragDrop(object sender, DragEventArgs e)
{
string[] s = (string[])e.Data.GetData(DataFormats.FileDrop, false);
int i;
for (i = 0; i < s.Length; i++)
{
if(s[i].Trim()!="")
{
//打开新的窗口 把路径传过去
}
}
}
private void Form1_DragEnter(object sender, DragEventArgs e)
{
if (e.Data.GetDataPresent(DataFormats.FileDrop))
e.Effect = DragDropEffects.All;
else
e.Effect = DragDropEffects.None;
}
private void Form1_DragDrop(object sender, DragEventArgs e)
{
string[] s = (string[])e.Data.GetData(DataFormats.FileDrop, false);
int i;
for (i = 0; i < s.Length; i++)
{
if(s[i].Trim()!="")
{
//打开新的窗口 把路径传过去
}
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-04-18
展开全部
调用SendMessage,传入窗口句柄,事件信息,指明要拖动窗口所需的处理。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询