前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >WinForm 界面美化

WinForm 界面美化

作者头像
全栈程序员站长
发布2022-08-24 13:37:03
2.1K0
发布2022-08-24 13:37:03
举报
文章被收录于专栏:全栈程序员必看

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

主界面的扁平化

  1. 更改winform自带的MainForm窗体属性 将主窗体FormBorderStyle更改为None,这样就得到了一个无边框的窗体

调节背景色,找到自己喜欢的颜色,输入到BackColor属性中

在主窗体的Mouse_Down中添加如下事件,实现窗体随意拖动:

代码语言:javascript
复制
[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;
代码语言:javascript
复制
private void Form6_MouseDown(object sender, MouseEventArgs e)
{ 
   
    ReleaseCapture();
    SendMessage(this.Handle, WM_SYSCOMMAND, SC_MOVE + HTCAPTION, 0);       
}

添加最小化、退出事件的按钮,背景色BackColor和字体色Forecolor设置为与界面颜色较为搭配的,将按钮的FlatStyle设置为Popup,它会自己随着界面风格调整

最小化和退出的代码如下:

代码语言:javascript
复制
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字体、字体颜色以及背景色的目的
代码语言:javascript
复制
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.cn/140059.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年5月8,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 主界面的扁平化
  • 基本控件实现美化
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档