1、绘制不规则的窗体位图设置位图的背景色。

2、设置窗体基本属性

(1)。将 FormBorderStyle 属性设置为 None。
  (2)。将窗体的 BackgroundImage 属性设置为先前创建的位图文件。不必将文件添加到项目系统中;这将在指定该文件作为背景图像时自动完成。
  (3)。将 TransparencyKey 属性设置为位图文件的背景色,本例中为黄色。(此属性告诉应用程序窗体中的哪些部分需要设置为透明。 )
3、添加相应代码。

(1)关闭

从工具栏中拖进一个按钮,设置其按钮文字为“×”,设置其大小为合适大小。双击该按钮进入其触发时间函数。
  写入如下代码:            
  this.Close();  //关闭本窗体 

(2)。设置窗体的移动操作,我们要用到两个全局的变量
  private Point mouseOffset;     //记录鼠标指针的坐标 private bool isMouseDown = false; //记录鼠标按键是否按下   
  创建该窗体 MouseDown事件的相应处理程序。
  private void Form1_MouseDown(object sender, System.Windows.Forms.MouseEventArgs e) { int xOffset; int yOffset; if (e.Button == MouseButtons.Left) { xOffset = -e.X - SystemInformation.FrameBorderSize.Width; yOffset = -e.Y - SystemInformation.CaptionHeight - SystemInformation.FrameBorderSize.Height; mouseOffset = new Point(xOffset, yOffset); isMouseDown = true; } }   
  创建该窗体的 MouseMove事件的相应处理程序
  private void Form1_MouseMove(object sender, System.Windows.Forms.MouseEventArgs e) { if (isMouseDown) { Point mousePos = Control.MousePosition; mousePos.Offset(mouseOffset.X, mouseOffset.Y); Location = mousePos; } }         
  创建该窗体的MouseUp事件的相应处理程序
  private void Form1_MouseUp(object sender, System.Windows.Forms.MouseEventArgs e) { // 修改鼠标状态isMouseDown的值 // 确保只有鼠标左键按下并移动时,才移动窗体 if (e.Button == MouseButtons.Left) { isMouseDown = false; } }   
  (3)。加入相应的其他的控件
  其他的就是看你自己的需要,来添加控件,实现自己想要实现的功能。
  本例中添加了一文本框,设置其背景为黄色,所以显示时也成了透明的。

注意:如果监视器的颜色深度设置大于 24 位,则不管 TransparencyKey 属性是如何设置的,窗体的非透明部分都会产生显示问题。若要避免出现这种问题,请确保“显示”控制面板中的监视器颜色深度的设置小于 24 位。当开发具有这种透明功能的应用程序时,请牢记应使您的用户意识到此问题。

C#制作不规则窗体的简单方法相关推荐

  1. C# 制作不规则窗体的两种解决方案

    我的广告单元,有空点一下哦,谢谢! 冒着被拍砖的危险,投放到首页.C#制作不规则窗体应该又是一个老生常谈的问题了,可能很多老鸟会带BS的眼神,那么请老鸟们视该文章如浮云吧. 制作不规则窗体,本例采用图 ...

  2. win10用html文件做壁纸,利用win10自带工具制作动态壁纸的简单方法

    微软在最强大操作系统利用win10自带工具制作动态壁纸的简单方法的详细介绍. 利用win10自带工具制作动态壁纸的简单方法: 把图片做成动态壁纸,总共分4步:1.准备素材,2.素材导入,3.调整效果, ...

  3. Ubuntu下制作iso文件的简单方法

    1. 内容简介: iso文件其实就是光盘的镜像文件, 通常需要虚拟光驱才能打开.那么,在Ubuntu linux系统下,如何制作iso文件呢?这就要用Ubuntu自带的命令mkisofs了. 2. 具 ...

  4. 用PS制作不规则边框

    不知这个技术你喜欢不喜欢呢? 如果你喜欢 制作比较有个性的作品,那么应该掌握一些用photoshop 制作不规则的窗口的 方法和 技巧.下面我们就来研究一下怎样快速而有效 制作这样一个看上去比较个性的 ...

  5. [转][小结][三种方法]实现WPF不规则窗体

    实现WPF不规则窗体的三种常用的方法如下: 1.使用Blend等工具绘制一个不规则xaml,然后作为窗体的背景.这个可以参考xiaowei0705的这篇博文:WPF制作不规则的窗体 . 2.给wind ...

  6. Unity中ugui如何制作不规则按键的两种方法

    Unity中ugui如何制作不规则按键的两种方法 两种不同的方案 目前,关于这个问题如何,解决通过搜索引擎我们能找到两种不同的方案: 多边形碰撞器: 该方法是指给精灵(Sprite)添加一个多边形碰撞 ...

  7. [html] 制作一个不规则形状有哪些方法可以实现?

    [html] 制作一个不规则形状有哪些方法可以实现? canvas 个人简介 我是歌谣,欢迎和大家一起交流前后端知识.放弃很容易, 但坚持一定很酷.欢迎大家一起讨论 主目录 与歌谣一起通关前端面试题

  8. MDI窗体简单方法(调用,闪屏)

    MDI窗体简单方法(调用,闪屏) 调用方式: RibbonForm mdishow = new RibbonForm(); //实例化midshow.MdiParent = this; //设置在主窗 ...

  9. cad画不规则实体_CAD三维实体入门法:制作不规则物体的方法/技巧

    这篇教程是向大家介绍利用cad制作不规则物体的方法和技巧,属于CAD三维实体入门教程,适合新手学习,个人觉得很不错,推荐到悠悠之家,希望大家喜欢! 朋友们都会遇到这样的难题,就是相当多的东西是不规则的 ...

最新文章

  1. 2021-08-02 json文件批量转化mask,生成train.txt路径make_path.py
  2. [tomcat]源码简析 异步/非阻塞和请求构成
  3. vs2019安装C#环境并新建窗体项目
  4. banana pi BPI-R1 原理图下载地址:
  5. 智能算法之Matlab实现(1)——遗传算法(1)
  6. Vue+Openlayers中实现地图旋转
  7. 无状态EJB:池化和生命周期
  8. js中的总结汇总(以后的都收集到这篇)
  9. 小米集团国际总部落地深圳;国美电器创始人黄光裕出狱;TiKV 4.0 发布 | 极客头条...
  10. efficientnet-yolo3-tf2的实现
  11. php zmq demo1
  12. 区块链开发(一)搭建基于以太坊的私有链环境
  13. 二分法求函数方程根的matlab实现(内附例题和代码)
  14. 高盛:大象转身,开启科技金融转型之路
  15. mldn andoird
  16. 关于归并排序时间复杂度 T(n) =2T(n/2)+O(n)
  17. qt 打印 刻度尺 曲线 复杂图像
  18. (BN)批量归一化全面解析
  19. 3、MacBook 跳到行尾、行首、Home和end快捷键
  20. 2022“杭电杯”中国大学生算法设计超级联赛(7)1004 Triangle Game

热门文章

  1. 定时关机win10_长按电源键强制关机,真的会弄坏电脑吗?
  2. 洛谷——P1010 [NOIP1998 普及组] 幂次方
  3. Open3d之颜色映射优化
  4. 在Unity中实现屏幕空间反射Screen Space Reflection(2)
  5. 广发银行大数据管控互联网风险
  6. ip8plus多重_【苹果 iPhone 8 Plus 手机使用总结】容量|处理器|手感_摘要频道_什么值得买...
  7. 【编译原理笔记13】中间代码生成:控制流语句及其SDT,布尔表达式及其SDT,控制流翻译的例子
  8. Nginx+Php-fpm运行原理详解
  9. oracle 01157,Oracle数据库启动时出现ORA-01157和ORA-01110问题
  10. java 转 utp-8,utf8和不同的utp8有何不同?