C#软件开发实例.私人订制自己的屏幕截图工具(三)托盘图标及菜单的实现

简介: 概述 添加托盘图标功能主要是为了添加菜单功能,可以通过托盘图标来管理程序;托盘菜单包括“打开保存目录、录制Flash动画、录制GIF动画、延时5秒截图、截图、设置、退出”等功能。 系统托盘 系统托盘是个特殊区域,通常在桌面的底部,在那里,用户可以随时访问正在运行中的那些程序。

概述

添加托盘图标功能主要是为了添加菜单功能,可以通过托盘图标来管理程序;托盘菜单包括“打开保存目录、录制Flash动画、录制GIF动画、延时5秒截图、截图、设置、退出”等功能。

系统托盘

系统托盘是个特殊区域,通常在桌面的底部,在那里,用户可以随时访问正在运行中的那些程序。在微软的Windows里,系统托盘常指任务栏的状态区域;在Gnome的桌面时,常指布告栏区域;在KDE桌面时,指系统托盘。在每个系统里,托盘是所有正运行在桌面环境里的应用程序共享的区域。

添加托盘图标

在Form1窗体设计模式下,鼠标移动到左侧工具箱上,弹出工具箱主面板,在公共控件中找到NotifyIcon并双击它


双击之后会发现在窗体下面多了一个“notifyIcon1”


选中“notifyIcon1”,在右侧的属性窗口中设置Text属性为:屏幕截图工具


添加图标资源

选择菜单:项目》属性,然后选择资源,切换到图标视图


单击“添加资源”下拉按钮》添加现有文件


选择一个事先准备好的图标文件,确定


在“Form1_Load”事件中添加以下代码:

this.notifyIcon1.Icon = Properties.Resources.cutImage;
this.notifyIcon1.Visible = true;

编译,运行,在任务栏就可以看到了,鼠标移动到托盘图标上,会显示刚刚设置的属性信息“屏幕截图工具”。

添加托盘菜单

打开工具箱》菜单和工具栏》双击“ContextMenuStrip”,添加右键菜单


添加菜单项,那条线(分隔符)只要输入一个减号就可以了


菜单文本是中文的,所以菜单名称中也会有中文,我不希望代码变量名称有中文,所以把退出的名称改为“tsmi_exit”


在退出菜单项上双击,添加代码

        private void tsmi_exit_Click(object sender, EventArgs e)
        {
            Application.Exit();
        }
在“Form1_Load”事件处理中添加代码

this.notifyIcon1.ContextMenuStrip = this.contextMenuStrip1;
编译,运行,在托盘图标单击鼠标右键,就可以看到以下菜单了,选择退出,就可以退出截图程序了。


到此,托盘图标及菜单的功能就实现完成了。

目录
相关文章
|
3月前
|
自然语言处理 C# Windows
C#开源免费的Windows右键菜单管理工具
C#开源免费的Windows右键菜单管理工具
|
12天前
|
IDE C# 开发工具
一个开源轻量级的C#代码格式化工具(支持VS和VS Code)
一个开源轻量级的C#代码格式化工具(支持VS和VS Code)
|
21天前
|
C#
C#如何实现窗体最小化到托盘
C#如何实现窗体最小化到托盘
17 0
|
26天前
|
图形学
【Unity C#_菜单Window开发系列_Inspector Component UnityEditor开发】
【Unity C#_菜单Window开发系列_Inspector Component UnityEditor开发】
|
6月前
|
缓存 开发框架 监控
一个C#开发的开源的快速启动工具
一个C#开发的开源的快速启动工具
44 0
|
4月前
|
存储 安全 算法
C# 泛型:类型参数化的强大工具
【1月更文挑战第7天】本文将深入探讨C#语言中的泛型编程,包括泛型的定义、用途、优势以及实际应用。通过类型参数化,泛型允许开发者编写更加灵活且可重用的代码,同时提高程序的类型安全性和性能。本文将通过示例代码和详细解释,帮助读者更好地理解泛型在C#中的重要性和实用性。
|
5月前
|
JSON C# 图形学
【Unity 3D】利用C#、Unity和Socket实现简单的在线聊天室工具(附源码 简单易懂)
【Unity 3D】利用C#、Unity和Socket实现简单的在线聊天室工具(附源码 简单易懂)
53 0
|
8月前
|
缓存 网络协议 C#
C#开源、功能强大、免费的Windows系统优化工具 - Optimizer
C#开源、功能强大、免费的Windows系统优化工具 - Optimizer