【C#】设置窗口随意移动
窗口标题栏隐藏后 无法在拖动
需要自己获取移动坐标来设置窗口位置
//外部需要两个集变量
private Point mouseOff;//鼠标移动位置变量
private bool leftFlag;//鼠标是否为左键
//鼠标按下事件
private void pictureBox2_MouseDown(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Left)
{
mouseOff = new Point(-e.X, -e.Y);//获得当前鼠标的坐标
leftFlag = true;
}
}
//鼠标移动事件
private void pictureBox2_MouseMove(object sender, MouseEventArgs e)
{
if (leftFlag)
{
Point mouseSet = Control.MousePosition;//获得移动后鼠标的坐标
mouseSet.Offset(mouseOff.X, mouseOff.Y);//设置移动后的位置
Location = mouseSet;//窗口为移动值
}
}
//鼠标放开事件
private void pictureBox2_MouseUp(object sender, MouseEventArgs e)
{
if (leftFlag)
{
leftFlag = false;
}
}
补充
窗口有3中状态:(最大化(Maximized)、最小化(Minimized)、默认大小(Normal))
1 // 令窗口最大化
2 this.WindowState = FormWindowState.Maximized;
3 // 令窗口最小化
4 this.WindowState = FormWindowState.Minimized;
变色:
label4.BackColor = Color.FromArgb(0,120,215);
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理