C#中form的窗体属性formborderstyle设置为none后就不能移动了

C#中form的窗体属性formborderstyle设置为none后就不能移动了怎么让鼠标按在tabcontrol上的时候能移动该窗体刚开始学习请高手指点指点... C#中form的窗体属性formborderstyle设置为none后就不能移动了 怎么让鼠标按在tabcontrol上的时候能移动该窗体 刚开始学习 请高手指点指点 展开
 我来答
百度网友bb2ba868f
推荐于2017-11-28 · TA获得超过863个赞
知道小有建树答主
回答量:330
采纳率:0%
帮助的人:310万
展开全部
设置为none后窗体已经没有了标题栏,窗体的移动、最大化、最小化、关闭这些需要自己写代码来完成。

窗体的移动:

bool formMove = false;//窗体是否移动
Point formPoint;//记录窗体的位置

private void Form4_MouseDown(object sender, MouseEventArgs e)//鼠标按下
{
formPoint = new Point();
int xOffset;
int yOffset;
if (e.Button == MouseButtons.Left)
{
xOffset = -e.X - SystemInformation.FrameBorderSize.Width;
yOffset = -e.Y - SystemInformation.CaptionHeight - SystemInformation.FrameBorderSize.Height;
formPoint = new Point(xOffset, yOffset);
formMove = true;//开始移动
}
}

private void Form4_MouseMove(object sender, MouseEventArgs e)//鼠标移动
{
if (formMove == true)
{
Point mousePos = Control.MousePosition;
mousePos.Offset(formPoint.X, formPoint.Y);
Location = mousePos;
}
}

private void Form4_MouseUp(object sender, MouseEventArgs e)//鼠标松开
{
if (e.Button == MouseButtons.Left)//按下的是鼠标左键
{
formMove = false;//停止移动
}
}

窗体的最大化、最小化和关闭:

需要自己拖三个picturebox控件到窗体的右上角,最大化、最小化和关闭的图标就自己去找了。添加picturebox的单击事件。如果要实现一些特效可以加入picturebox的MouseEnter、MouseLeave事件来更换图片。

private void pictureBox1_Click(object sender, EventArgs e)
{
this.WindowState=FormWindowState.Minimized;//最小化
}

private void pictureBox2_Click(object sender, EventArgs e)
{

WindowState = FormWindowState.Maximized;//最大化

}

private void pictureBox3_Click(object sender, EventArgs e)
{
this.Close();
}

参考资料: http://hi.baidu.com/yyq745201/blog/item/5dd987ee0e78053cacafd595.html

手机用户83483
2010-01-13 · TA获得超过122个赞
知道答主
回答量:87
采纳率:0%
帮助的人:91.1万
展开全部
用鼠标事件去做.
窗体的鼠标事件有MouseDown和MouseUp事件,去在里面写就对了
在Mouse开始移动的时候,记录屏幕坐标,然后再移动结束的时候让窗体移动到相应的坐标.应该可以吧.
烦给分..谢谢~
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式