C#清空窗体的背景图片

目录

一、涉及到的知识点

1.设置窗体的背景图

2.加载窗体背景图

3.清空窗体的背景图

二、 示例


一、涉及到的知识点

1.设置窗体的背景图

        详见本文作者的其他文章:C#手动改变自制窗体的大小-CSDN博客  https://wenchm.blog.csdn.net/article/details/137027140

2.加载窗体背景图

        详见本文作者的其他文章:C#手动改变自制窗体的大小-CSDN博客  https://wenchm.blog.csdn.net/article/details/137027140

        推荐使用下列方法:

/// <summary>
/// 加载初始背景图片
/// </summary>
private void Form1_Load(object? sender, EventArgs e)
{
    BackgroundImage = Properties.Resources.test;
    BackgroundImageLayout = ImageLayout.Tile;
}

3.清空窗体的背景图

        graphics.Clear() 方法用于清除指定的 Graphics 对象的背景。这个方法接受一个 Color 类型的参数,它指定了要使用的颜色,例如使用了Color.BlueViolet 作为参数,这意味着当调用 graphics.Clear(Color.BlueViolet) 时,窗体的背景将被清除并设置为蓝紫色。
        graphics.Clear() 方法通常用于在开始绘制之前清空画布或窗体的背景。如果不调用此方法,那么任何在窗体上绘制的内容都会叠加在以前的内容之上,这可能会导致一些不需要的视觉效果。
        graphics.Clear() 方法只会清除 Graphics 对象所关联的设备的背景,例如窗体或图像。如果想要清除其他设备的背景,例如打印机或文件,需要使用其他方法。

二、 示例

         本实例在图片资源管理器里放置了2张图片,通过Load初始化加载一个背景图,通过鼠标单击事件清空背景图,通过鼠标双击事件加载另一张背景图。循环往复操作,观察效果。

// 清空背景图片
namespace _174
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        /// <summary>
        /// 加载初始背景图片
        /// </summary>
        private void Form1_Load(object? sender, EventArgs e)
        {
            BackgroundImage = Properties.Resources.test;
            BackgroundImageLayout = ImageLayout.Tile;
        }

        /// <summary>
        /// 清空背景图片
        /// </summary>
        private void Form1_MouseClick(object sender, MouseEventArgs e)
        {
            Graphics graphics = CreateGraphics();   //创建绘图对象
            graphics.Clear(Color.BlueViolet);       //清空背景
            graphics.Dispose();                     //释放绘图资源
        }

        /// <summary>
        /// 再次加载背景图片
        /// </summary>
        private void Form1_MouseDoubleClick(object sender, MouseEventArgs e)
        {
            BackgroundImage = Properties.Resources.testnew;
            BackgroundImageLayout = ImageLayout.Tile;
        }
    }
}

相关推荐

  1. c# BlockingCollection

    2024-04-05 14:46:05       52 阅读
  2. C#WPF更改图标和生成exe文件图标实例

    2024-04-05 14:46:05       36 阅读
  3. 关于c++中vector使用(声明、、追加)

    2024-04-05 14:46:05       63 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-04-05 14:46:05       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-04-05 14:46:05       100 阅读
  3. 在Django里面运行非项目文件

    2024-04-05 14:46:05       82 阅读
  4. Python语言-面向对象

    2024-04-05 14:46:05       91 阅读

热门阅读

  1. “心灵想要大声呼喊。”

    2024-04-05 14:46:05       42 阅读
  2. CCF CSP模拟真题解答示例

    2024-04-05 14:46:05       38 阅读
  3. 2024-04-04 问AI: 在深度学习中,微调是什么?

    2024-04-05 14:46:05       45 阅读
  4. C库函数详解(一)

    2024-04-05 14:46:05       31 阅读
  5. 学python的第七天

    2024-04-05 14:46:05       34 阅读
  6. 58. 最后一个单词的长度 —— LeetCode (python)

    2024-04-05 14:46:05       37 阅读
  7. ACM linux 驱动验证

    2024-04-05 14:46:05       41 阅读
  8. 每日一题 --- 前 K 个高频元素[力扣][Go]

    2024-04-05 14:46:05       35 阅读
  9. 蓝桥杯算法基础(37)BFS与DFS

    2024-04-05 14:46:05       25 阅读