• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >C#教程 > winform创建不规则窗体的方法

winform创建不规则窗体的方法

作者:我心依旧 字体:[增加 减小] 来源:互联网 时间:2017-05-28

我心依旧 通过本文主要向大家介绍了c#winform窗体美化,winform窗体间传值,winform窗体固定大小,winform窗体美化,winform窗体等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

本文实例讲述了winform创建不规则窗体的方法。分享给大家供大家参考。具体如下:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using Microsoft.Win32;
using System.Drawing.Drawing2D;
using System.IO;
namespace WindowsApplication2
{
 public partial class Form3 : Form
 {
  public Form3()
  {
   InitializeComponent();
   this.FormBorderStyle = FormBorderStyle.None;
   ColorConverter colorconvert = new ColorConverter();
   this.BackColor = (Color)colorconvert.ConvertFromString("window");
   this.TransparencyKey = (Color)colorconvert.ConvertFromString("window");
  }
  private void button1_Click(object sender, EventArgs e)
  {
   this.Close();
  }
  protected override void OnPaint(PaintEventArgs e)
  {
   Graphics g = e.Graphics;
   Rectangle mainRect = new Rectangle(0, 0, 695, 278);
   Region mainRegion = new Region(mainRect);
   e.Graphics.SetClip(mainRegion, CombineMode.Replace);
   //设置窗体的外观形式
   Point point1 = new Point(0, 32);
   Point point2 = new Point(9, 20);
   Point point3 = new Point(21, 13);
   Point point4 = new Point(34, 9);
   // 创建一个以点为元素的数组
   Point[] curvePoints = { point1, point2, point3, point4 };
   // 创建一个GraphicsPath 对象并添加一条曲线
   GraphicsPath gPath = new GraphicsPath();
   gPath.AddCurve(curvePoints, 0, 3, 0.8f);
   gPath.AddLine(36, 9, 378, 9);
   point1.X = 378; point1.Y = 9;
   point2.X = 387; point2.Y = 5;
   point3.X = 394; point3.Y = 0;
   Point[] curvePoints2 = { point1, point2, point3 };
   gPath.AddCurve(curvePoints2, 0, 2, 0.8f);
   gPath.AddLine(394, 0, 0, 0);
   Region rg = new Region(gPath);
   e.Graphics.ExcludeClip(rg);
  //可以为任意图片
   string str = Directory.GetCurrentDirectory() + "\\2.png";
   Image img = Image.FromFile(str);
   e.Graphics.DrawImage(img, 0, 0, 695, 278);
   // 重设剪切好的区域
   e.Graphics.ResetClip();
  }
 }
}

</div>

希望本文所述对大家的C#程序设计有所帮助。

</div>
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • Winform窗体圆角设计代码
  • C#在winform中实现数据增删改查等功能
  • Winform实现鼠标可穿透的窗体镂空效果
  • WinForm单例窗体用法实例
  • WinForm遍历窗体所有子控件的方法
  • C#使用winform简单导出Excel的方法
  • winform实现拖动文件到窗体上的方法
  • winform创建不规则窗体的方法
  • Winform窗体效果实例分析
  • WinForm实现窗体最大化并遮盖任务栏的方法

相关文章

  • 2017-05-28简单的excel导入导出示例分享
  • 2017-05-28winform简单缓存类实例
  • 2017-05-28C#实现简易的加密、解密字符串工具类实例
  • 2017-05-28C#线程同步的三类情景分析
  • 2017-05-28C#读取Excel并转化成XML的方法
  • 2017-05-28C#算法之关于大牛生小牛的问题
  • 2017-05-28C#中的try catch finally用法分析
  • 2017-05-28C#实现简单播放mp3的方法
  • 2017-05-28c#典型工厂化实现实例
  • 2017-05-28C#编写发送邮件组件

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • 一款域名监控小工具 Domain(IP)Watcher 实现代码
    • C#生成互不相同随机数的实现方法
    • DevExpress根据条件设置GridControl RepositoryItem是否可编辑
    • Windows系统中使用C#读取文本文件内容的小示例
    • 浅析C#中的Main(String[] args)参数输入问题
    • C#非递归先序遍历二叉树实例
    • C#实现windows form倒计时的方法
    • C#实现基于加减按钮形式控制系统音量及静音的方法
    • C#实现文件与二进制互转并存入数据库
    • C#使用foreach语句简单遍历数组的方法

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有