C#窗体换肤
Form1.cs
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace BarterSkin
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
public static int var_bar = 1;
private void barter(int n)
{
switch (n)
{
case 1:
{
this.Width = Properties.Resources.sy1_01.Width;
this.Height = Properties.Resources.sy1_01.Height + Properties.Resources.sy1_02.Height - 5;
panel_Title.BackgroundImage = Properties.Resources.sy1_01;
panel_ALL.BackgroundImage = Properties.Resources.sy1_02;
pictureBox_Min.Image = null;
pictureBox_Min.Image = Properties.Resources.sy1_04;
pictureBox_Max.Image = null;
pictureBox_Max.Image = Properties.Resources.sy1_05;
pictureBox_Close.Image = null;
pictureBox_Close.Image = Properties.Resources.sy1_03;
var_bar = 1;
break;
}
case 2:
{
this.Width = Properties.Resources.sy2_01.Width;
this.Height = Properties.Resources.sy2_01.Height + Properties.Resources.sy2_02.Height - 5;
panel_Title.BackgroundImage = Properties.Resources.sy2_01;
panel_ALL.BackgroundImage = Properties.Resources.sy2_02;
pictureBox_Min.Image = null;
pictureBox_Min.Image = Properties.Resources.sy2_04;
pictureBox_Max.Image = null;
pictureBox_Max.Image = Properties.Resources.sy2_05;
pictureBox_Close.Image = null;
pictureBox_Close.Image = Properties.Resources.sy2_03;
var_bar = 2;
break;
}
case 3:
{
this.Width = Properties.Resources.sy3_01.Width;
this.Height = Properties.Resources.sy3_01.Height + Properties.Resources.sy3_02.Height - 5;
panel_Title.BackgroundImage = Properties.Resources.sy3_01;
panel_ALL.BackgroundImage = Properties.Resources.sy3_02;
pictureBox_Min.Image = null;
pictureBox_Min.Image = Properties.Resources.sy3_04;
pictureBox_Max.Image = null;
pictureBox_Max.Image = Properties.Resources.sy3_05;
pictureBox_Close.Image = null;
pictureBox_Close.Image = Properties.Resources.sy3_03;
var_bar = 3;
break;
}
}
barterShow(n);
}
private void barterShow(int n)
{
ToolS_1.Checked = false;
ToolS_2.Checked = false;
ToolS_3.Checked = false;
switch (n)
{
case 1: ToolS_1.Checked = true; break;
case 2: ToolS_2.Checked = true; break;
case 3: ToolS_3.Checked = true; break;
}
}
private void Form1_Load(object sender, EventArgs e)
{
barter(1);
}
#region 设置窗体的最大化、最小化和关闭按钮的单击事件
/// <summary>
/// 设置窗体的最大化、最小化和关闭按钮的单击事件
/// </summary>
/// <param Frm_Tem="Form">窗体</param>
/// <param n="int">标识</param>
public void FrmClickMeans(Form Frm_Tem, int n)
{
switch (n)
{
case 0:
Frm_Tem.WindowState = FormWindowState.Minimized;
break;
case 1:
{
if (Frm_Tem.WindowState == FormWindowState.Maximized)
Frm_Tem.WindowState = FormWindowState.Normal;
else
Frm_Tem.WindowState = FormWindowState.Maximized;
break;
}
case 2:
Frm_Tem.Close();
break;
}
}
#endregion
#region 控制图片的切换状态
/// <summary>
/// 控制图片的切换状态
/// </summary>
/// <param Frm_Tem="Form">要改变图片的对象</param>
/// <param n="int">标识</param>
/// <param ns="int">移出移入标识</param>
public static PictureBox Tem_PictB = new PictureBox();
public void ImageSwitch(object sender, int n, int ns)
{
Tem_PictB = (PictureBox)sender;
switch (n)
{
case 0:
{
Tem_PictB.Image = null;
if (ns == 0)
{
switch (var_bar)
{
case 1: Tem_PictB.Image = Properties.Resources.sy1_04_1; break;
case 2: Tem_PictB.Image = Properties.Resources.sy2_04_1; break;
case 3: Tem_PictB.Image = Properties.Resources.sy3_04_1; break;
}
}
if (ns == 1)
{
switch (var_bar)
{
case 1: Tem_PictB.Image = Properties.Resources.sy1_04; break;
case 2: Tem_PictB.Image = Properties.Resources.sy2_04; break;
case 3: Tem_PictB.Image = Properties.Resources.sy3_04; break;
}
}
break;
}
case 1:
{
Tem_PictB.Image = null;
if (ns == 0)
{
switch (var_bar)
{
case 1: Tem_PictB.Image = Properties.Resources.sy1_05_1; break;
case 2: Tem_PictB.Image = Properties.Resources.sy2_05_1; break;
case 3: Tem_PictB.Image = Properties.Resources.sy3_05_1; break;
}
}
if (ns == 1)
{
switch (var_bar)
{
case 1: Tem_PictB.Image = Properties.Resources.sy1_05; break;
case 2: Tem_PictB.Image = Properties.Resources.sy2_05; break;
case 3: Tem_PictB.Image = Properties.Resources.sy3_05; break;
}
}
break;
}
case 2:
{
Tem_PictB.Image = null;
if (ns == 0)
{
switch (var_bar)
{
case 1: Tem_PictB.Image = Properties.Resources.sy1_03_1; break;
case 2: Tem_PictB.Image = Properties.Resources.sy2_03_1; break;
case 3: Tem_PictB.Image = Properties.Resources.sy3_03_1; break;
}
}
if (ns == 1)
{
switch (var_bar)
{
case 1: Tem_PictB.Image = Properties.Resources.sy1_03; break;
case 2: Tem_PictB.Image = Properties.Resources.sy2_03; break;
case 3: Tem_PictB.Image = Properties.Resources.sy3_03; break;
}
}
break;
}
}
}
#endregion
private void pictureBox_Close_Click(object sender, EventArgs e)
{
FrmClickMeans(this, Convert.ToInt16(((PictureBox)sender).Tag.ToString()));
}
private void pictureBox_Close_MouseEnter(object sender, EventArgs e)
{
ImageSwitch(sender, Convert.ToInt16(((PictureBox)sender).Tag.ToString()), 0);
}
private void pictureBox_Close_MouseLeave(object sender, EventArgs e)
{
ImageSwitch(sender, Convert.ToInt16(((PictureBox)sender).Tag.ToString()), 1);
}
private void ToolS_1_Click(object sender, EventArgs e)
{
barter(Convert.ToInt32(((ToolStripMenuItem)sender).Tag));
}
}
}
Form1.designer.cs
namespace BarterSkin
{
partial class Form1
{
/// <summary>
/// 必需的设计器变量。
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// 清理所有正在使用的资源。
/// </summary>
/// <param name="disposing">如果应释放托管资源,为 true;否则为 false。</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows 窗体设计器生成的代码
/// <summary>
/// 设计器支持所需的方法 - 不要
/// 使用代码编辑器修改此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.components = new System.ComponentModel.Container();
this.pictureBox_Close = new System.Windows.Forms.PictureBox();
this.panel_Title = new System.Windows.Forms.Panel();
this.contextMenuStrip1 = new System.Windows.Forms.ContextMenuStrip(this.components);
this.ToolS_1 = new System.Windows.Forms.ToolStripMenuItem();
this.ToolS_2 = new System.Windows.Forms.ToolStripMenuItem();
this.ToolS_3 = new System.Windows.Forms.ToolStripMenuItem();
this.pictureBox_Min = new System.Windows.Forms.PictureBox();
this.pictureBox_Max = new System.Windows.Forms.PictureBox();
this.panel_ALL = new System.Windows.Forms.Panel();
((System.ComponentModel.ISupportInitialize)(this.pictureBox_Close)).BeginInit();
this.panel_Title.SuspendLayout();
this.contextMenuStrip1.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.pictureBox_Min)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.pictureBox_Max)).BeginInit();
this.SuspendLayout();
//
// pictureBox_Close
//
this.pictureBox_Close.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
this.pictureBox_Close.Location = new System.Drawing.Point(269, 11);
this.pictureBox_Close.Name = "pictureBox_Close";
this.pictureBox_Close.Size = new System.Drawing.Size(20, 20);
this.pictureBox_Close.TabIndex = 3;
this.pictureBox_Close.TabStop = false;
this.pictureBox_Close.Tag = "2";
this.pictureBox_Close.MouseLeave += new System.EventHandler(this.pictureBox_Close_MouseLeave);
this.pictureBox_Close.Click += new System.EventHandler(this.pictureBox_Close_Click);
this.pictureBox_Close.MouseEnter += new System.EventHandler(this.pictureBox_Close_MouseEnter);
//
// panel_Title
//
this.panel_Title.ContextMenuStrip = this.contextMenuStrip1;
this.panel_Title.Controls.Add(this.pictureBox_Close);
this.panel_Title.Controls.Add(this.pictureBox_Min);
this.panel_Title.Controls.Add(this.pictureBox_Max);
this.panel_Title.Dock = System.Windows.Forms.DockStyle.Top;
this.panel_Title.Location = new System.Drawing.Point(0, 0);
this.panel_Title.Name = "panel_Title";
this.panel_Title.Size = new System.Drawing.Size(298, 37);
this.panel_Title.TabIndex = 2;
//
// contextMenuStrip1
//
this.contextMenuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.ToolS_1,
this.ToolS_2,
this.ToolS_3});
this.contextMenuStrip1.Name = "contextMenuStrip1";
this.contextMenuStrip1.Size = new System.Drawing.Size(101, 70);
//
// ToolS_1
//
this.ToolS_1.Name = "ToolS_1";
this.ToolS_1.Size = new System.Drawing.Size(100, 22);
this.ToolS_1.Tag = "1";
this.ToolS_1.Text = "换肤1";
this.ToolS_1.Click += new System.EventHandler(this.ToolS_1_Click);
//
// ToolS_2
//
this.ToolS_2.Name = "ToolS_2";
this.ToolS_2.Size = new System.Drawing.Size(100, 22);
this.ToolS_2.Tag = "2";
this.ToolS_2.Text = "换肤2";
this.ToolS_2.Click += new System.EventHandler(this.ToolS_1_Click);
//
// ToolS_3
//
this.ToolS_3.Name = "ToolS_3";
this.ToolS_3.Size = new System.Drawing.Size(100, 22);
this.ToolS_3.Tag = "3";
this.ToolS_3.Text = "换肤3";
this.ToolS_3.Click += new System.EventHandler(this.ToolS_1_Click);
//
// pictureBox_Min
//
this.pictureBox_Min.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
this.pictureBox_Min.Location = new System.Drawing.Point(217, 11);
this.pictureBox_Min.Name = "pictureBox_Min";
this.pictureBox_Min.Size = new System.Drawing.Size(20, 20);
this.pictureBox_Min.TabIndex = 2;
this.pictureBox_Min.TabStop = false;
this.pictureBox_Min.Tag = "0";
this.pictureBox_Min.MouseLeave += new System.EventHandler(this.pictureBox_Close_MouseLeave);
this.pictureBox_Min.Click += new System.EventHandler(this.pictureBox_Close_Click);
this.pictureBox_Min.MouseEnter += new System.EventHandler(this.pictureBox_Close_MouseEnter);
//
// pictureBox_Max
//
this.pictureBox_Max.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
this.pictureBox_Max.Location = new System.Drawing.Point(243, 11);
this.pictureBox_Max.Name = "pictureBox_Max";
this.pictureBox_Max.Size = new System.Drawing.Size(20, 20);
this.pictureBox_Max.TabIndex = 0;
this.pictureBox_Max.TabStop = false;
this.pictureBox_Max.Tag = "1";
this.pictureBox_Max.MouseLeave += new System.EventHandler(this.pictureBox_Close_MouseLeave);
this.pictureBox_Max.Click += new System.EventHandler(this.pictureBox_Close_Click);
this.pictureBox_Max.MouseEnter += new System.EventHandler(this.pictureBox_Close_MouseEnter);
//
// panel_ALL
//
this.panel_ALL.ContextMenuStrip = this.contextMenuStrip1;
this.panel_ALL.Dock = System.Windows.Forms.DockStyle.Fill;
this.panel_ALL.Location = new System.Drawing.Point(0, 37);
this.panel_ALL.Name = "panel_ALL";
this.panel_ALL.Size = new System.Drawing.Size(298, 157);
this.panel_ALL.TabIndex = 3;
//
// Form1
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(298, 194);
this.Controls.Add(this.panel_ALL);
this.Controls.Add(this.panel_Title);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
this.Name = "Form1";
this.Text = "Form1";
this.Load += new System.EventHandler(this.Form1_Load);
((System.ComponentModel.ISupportInitialize)(this.pictureBox_Close)).EndInit();
this.panel_Title.ResumeLayout(false);
this.contextMenuStrip1.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.pictureBox_Min)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.pictureBox_Max)).EndInit();
this.ResumeLayout(false);
}
#endregion
private System.Windows.Forms.PictureBox pictureBox_Close;
private System.Windows.Forms.Panel panel_Title;
private System.Windows.Forms.PictureBox pictureBox_Min;
private System.Windows.Forms.PictureBox pictureBox_Max;
private System.Windows.Forms.Panel panel_ALL;
private System.Windows.Forms.ContextMenuStrip contextMenuStrip1;
private System.Windows.Forms.ToolStripMenuItem ToolS_1;
private System.Windows.Forms.ToolStripMenuItem ToolS_2;
private System.Windows.Forms.ToolStripMenuItem ToolS_3;
}
}
Program.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Windows.Forms;
namespace BarterSkin
{
static class Program
{
/// <summary>
/// 应用程序的主入口点。
/// </summary>
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Form1());
}
}
}
C#窗体换肤的更多相关文章
- .NET vs2010中使用IrisSkin2.dll轻松实现winForm窗体换肤功能
IrisSkin2.dll是一款很不错的免费皮肤控件,利用它可以轻松的实现winForm窗体换肤! 网上很多朋友说在VS2010中不能使用IrisSkin2.dll,我这里提供一个取巧的办法. Iri ...
- C#.NET vs2010中使用IrisSkin4.dll轻松实现WinForm窗体换肤功能
IrisSkin2.dll是一款很不错的免费皮肤控件,利用它可以轻松的实现WinForm窗体换肤 然而IrisSkin2.dll只能在.NET Faremwork 4.0以及之前的版本使用,所以要在V ...
- Winform- IrisSkin.dll轻松实现窗体换肤功能
IrisSkin2.dll是一款很不错的免费皮肤控件,利用它可以轻松的实现winForm窗体换肤 然而IrisSkin2.dll只能在.NET Faremwork 4.0以及之前的版本使用,所以要在V ...
- VS窗体换肤
1.首先我们要下载一个皮肤 vs窗体皮肤下载官网:http://irisskin.software.informer.com/download/ 2.创建一个lib文件夹 把下载好的引用放到里面 3. ...
- C# 实现对窗体(Form)换肤
http://www.csharpwin.com/csharpresource/2992.shtml 一直想写一个比较完整的.容易扩展的窗体换肤的方案,由于时间问题,都没去实现这个想法.现在有朋友提出 ...
- WPF换肤之五:创建漂亮的窗体
原文:WPF换肤之五:创建漂亮的窗体 换肤效果 经过了前面四章的讲解,我们终于知道了如何拖拉窗体使之改变大小,也知道了如何处理鼠标事件,同时,也知道了如何利用更好的编写方式来编写一个方便实用和维护的换 ...
- C# 轻松实现对窗体(Form)换肤[转]
一直想写一个比较完整的.容易扩展的窗体换肤的方案,由于时间问题,都没去实现这个想法.现在有朋友提出需要,就把以前写的重新拿出来看了一篇,花了些时间,做出了现在的这个换肤的方案.实现的过程中遇到了不少问 ...
- C# Winform中窗体的美化—— 用IrisSkin轻松实现换肤功能
今天经前辈提醒才知道winform窗体还有美化工具,呵呵,不得不说,孤陋寡闻了.下面总结一下irisskin2的使用步骤和遇到的问题及解决办法. 1.网址:http://www.pc6.com/sof ...
- C# Winform 换肤
本来计划接着上篇 C# Winform模仿百度日历,发现一时半会写不完,只写了一小半还不全,暂且搁置下.现在计划下班后每天至少写一篇博客,未能完成的等周末(不加班都情况)补充完整. 本篇博客窗体换肤, ...
随机推荐
- spring boot(五)Spring data jpa介绍
在上篇文章springboot(二):web综合开发中简单介绍了一下spring data jpa的基础性使用,这篇文章将更加全面的介绍spring data jpa 常见用法以及注意事项 使用spr ...
- 【Oracle】【4】mybatis insert/update 数据后返回关键字段
1,插入 insert 场景:ID字段的值是数据库表“默认/表达式”(sys_guid())自动生成,插入一条数据到数据库后,需要获取该条数据的ID 解决方案: (1)Service层生成UUID p ...
- php打印
function preview() { bdhtml = window.document.body.innerHTML; sprnstr = "<!--startprint--> ...
- hdu-6434-欧拉函数
Problem I. Count Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 524288/524288 K (Java/Other ...
- 用vue构建多页面应用
最近一直在研究使用vue做出来一些东西,但都是SPA的单页面应用,但实际工作中,单页面并不一定符合业务需求,所以这篇我就来说说怎么开发多页面的Vue应用,以及在这个过程会遇到的问题. 准备工作 在本地 ...
- 十三、MVC的WEB框架(Structs2)
一.Structs2的应用 Structs2是基于MVC的WEB框架.一般基于框架的程序要运行成功,对于JAR包的版本,配置文件的正确性有着苛刻的要求,一个地方错了,都会导致框架程序运行出错. 1.首 ...
- PHP函数总结(个人版)
($saying[$key][, , 'utf-8'); 1.//mb_substr() string mb_substr ( string $str , int $start [, int $len ...
- AIX 5335端口IBM WebSphere应用服务器关闭连接信息泄露漏洞的修复
今天按要求协助进行漏洞修复,有个“IBM WebSphere应用服务器关闭连接信息泄露漏洞”,一直没太搞清是不是没打补丁引起的问题. 感觉同样的安装有的报这漏洞有的不报,而报的有的是应用端口,有时是控 ...
- nodejs安装 淘宝镜像
1◆ nodejs下载 2◆ 安装 3◆ 测试 4◆ 淘宝镜像 npm install -g cnpm --registry=https://registry.npm.taobao.org 5 ...
- LY.JAVA面向对象编程.封装、this、构造方法
2018-07-07 this关键字 构造方法 /* 我们一直在使用构造方法,但是,我们确没有定义构造方法,用的是哪里来的呢? 构造方法的注意事项: A:如果我们没有给出构造方法,系统将自动提供一个无 ...