WinForm 界面美化

WinForm 界面美化主界面的扁平化更改winform自带的MainForm窗体属性将主窗体FormBorderStyle更改为None,这样就得到了一个无边框的窗体调节背景色,找到自己喜欢的颜色,输入到BackColor属性中在主窗体的Mouse_Down中添加如下事件,实现窗体随意拖动:[DllImport(“user32.dll”)]publicstaticexternboolReleaseCapture();[DllImport(“user32.dll”)]publicstatic

大家好,又见面了,我是你们的朋友全栈君。

主界面的扁平化

  1. 更改winform自带的MainForm窗体属性
    将主窗体FormBorderStyle更改为None,这样就得到了一个无边框的窗体
    在这里插入图片描述
    调节背景色,找到自己喜欢的颜色,输入到BackColor属性中
    在这里插入图片描述
    在主窗体的Mouse_Down中添加如下事件,实现窗体随意拖动:
    在这里插入图片描述
[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;
private void Form6_MouseDown(object sender, MouseEventArgs e)
{ 
   
    ReleaseCapture();
    SendMessage(this.Handle, WM_SYSCOMMAND, SC_MOVE + HTCAPTION, 0);       
}

在这里插入图片描述
添加最小化、退出事件的按钮,背景色BackColor和字体色Forecolor设置为与界面颜色较为搭配的,将按钮的FlatStyle设置为Popup,它会自己随着界面风格调整
在这里插入图片描述
最小化和退出的代码如下:

private void min_Click(object sender, EventArgs e)
{ 
   
    this.WindowState = FormWindowState.Minimized;
}

private void exit_Click(object sender, EventArgs e)
{ 
   

    this.Close();
}

基本控件实现美化

  • tabcontrol美化
    通过tabcontrol的drawitem事件,来达到改变tabpage字体、字体颜色以及背景色的目的
    在这里插入图片描述
private void tabControl1_DrawItem(object sender, DrawItemEventArgs e)
{ 
   
	   SolidBrush back = new SolidBrush(Color.FromArgb(45, 45, 48));
	   SolidBrush white = new SolidBrush(Color.FromArgb(122, 193, 255));
	   Rectangle rec = tabControl1.GetTabRect(0);
	   e.Graphics.FillRectangle(back, rec);
	   Rectangle rec1 = tabControl1.GetTabRect(1);
	   e.Graphics.FillRectangle(back, rec1);
	   StringFormat sf = new StringFormat();
	   sf.Alignment = StringAlignment.Center;
	   for (int i = 0; i < tabControl1.TabPages.Count; i++)
	   { 
   
	       Rectangle rec2 = tabControl1.GetTabRect(i);
	       e.Graphics.DrawString(tabControl1.TabPages[i].Text, new Font("微软雅黑", 9), white, rec2, sf);
	   }
}       
  • DataGridview美化
    通过设置ColumnHeadersDefaultCellStyle,来改变列标题的背景、字体和颜色
    在这里插入图片描述
    在这里插入图片描述
    通过设置DefaultCellStyle,来改变单元格背景、字体和颜色
    在这里插入图片描述
    在这里插入图片描述
    通过设置RowHeadersDefaultCellStyle,来改变行标题的背景、字体和颜色
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/140059.html原文链接:https://javaforall.net

(1)
上一篇 2022年5月8日 上午8:00
下一篇 2022年5月8日 上午8:00


相关推荐

  • 考研词汇 用语言记忆

    考研词汇 用语言记忆根据目前的时间安排及复习进度,相信大家都泡在英语堆里狂记单词,我也一样  不过在偶尔看了下面的单词复习方法后,我试着并为之坚持下来,感觉收获真的不一样  因此奉献给大家,希望对大家有所帮助!告戒一句:考研贵在坚持!!    好东西,记得顶顶顶顶顶啊!!  16天记住7000考研词汇(第一天)1.WithmyownearsIclearlyhe

    2022年5月26日
    42
  • (轉貼) 曾說退出政壇 謝長廷:是幽默啦!(News)

    (轉貼) 曾說退出政壇 謝長廷:是幽默啦!(News)(轉貼) 曾說退出政壇 謝長廷:是幽默啦!(News)

    2022年4月21日
    45
  • ORA-01017解决方案「建议收藏」

    ORA-01017解决方案「建议收藏」ora-01017是用户登录的报错。解决思路:1)确认所登用户的状态。可能是被锁了,可能是密码过期状态。修改之,即可2)当然是确认用户名密码是否输入正确。不确定密码的话可以重设。3)oracle-12C有了数据库容器概念。所登用户是否在PDBORCL里,tnsnames.ora文件里是否配置了PDBORCL,登录时是否选中了PDBORCL4)所登用户是否是sysdba。是的话登录语句要加assysdba这4步确定好了,能解决100%的ora-01017报错情况。…

    2022年5月31日
    81
  • Midjourney如何生成写实风格_Midjourney写实风格生成教程

    Midjourney如何生成写实风格_Midjourney写实风格生成教程

    2026年3月15日
    2
  • 二叉树后序遍历的非递归实现_二叉树的后序遍历非递归详细

    二叉树后序遍历的非递归实现_二叉树的后序遍历非递归详细一、递归实现前序,序,后序遍历;对于二叉树,前面已经采用递归的方式实现的其前序,中序,后序遍历,具体请参见:http://blog.csdn.net/dai_wen/article/details/78955411那么,如何采用非递归的方式遍历树呢?下面,以实现中序遍历二叉树为主题展开:二、非递归实现中序遍历:1,结构:首先,对于中序遍历,我们知道,原则是先走到的结点后访问,后走到的结点

    2025年11月16日
    4
  • 阿里矢量库 图标引入

    阿里矢量库 图标引入在阿里引入 svg font face font family iconfont src url at alicdn com t font 3sgbtmcfkak woff2 t 56 format woff2 url at alicdn com t font 3sgbtmcfkak woff t 56 format woff url at ali

    2026年3月19日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号