c#最小化到托盘+双击托盘恢复+禁止运行多个该程序(代码片段)

生命在等待中延续 生命在等待中延续     2022-10-31     825

关键词:

托盘程序的制作:

1.添加notifyIcon控件,并添加Icon,否则托盘没有图标(托盘右键菜单也可直接在属性里添加);
2.响应Form的Resize或SizeChanged消息:

// Hide to system tray  
private void Form1_Resize(object sender, EventArgs e)  
  
    if (this.WindowState == FormWindowState.Minimized)  
      
        this.Hide();  
        this.ShowInTaskbar = false;  
        this.notifyIcon.Visible = true;  
      
  

3.双击托盘图标恢复需要响应notifyIcon的DoubleClick消息:

// Show from system tray  
private void notifyIcon_DoubleClick(object sender, EventArgs e)  
  
    if (this.WindowState == FormWindowState.Minimized)  
      
        this.Show();  
        this.WindowState = FormWindowState.Normal;  
        this.ShowInTaskbar = true;
        notifyIcon.Visible = false;  
      
  

 防止这个程序同时运行多个 编辑 Program.cs 文件  (参考1:C#如何防止程序多次运行的技巧 参考2:[C# 开发技巧]如何防止程序多次运行)

using System;
using System.Windows.Forms;
using System.Threading;

namespace WhoOnline

    static class Program
    
        /// <summary>
        /// 应用程序的主入口点。
        /// </summary>
        [STAThread]
        static void Main()
        
            Mutex m = new Mutex(false, "Product_Index_Cntvs", out bool bCreatedNew);
            if (bCreatedNew)
            
                Application.EnableVisualStyles();
                Application.SetCompatibleTextRenderingDefault(false);
                Application.Run(new Form1());
            
            else
            
                MessageBox.Show("应用程序已经在运行中...");
                System.Threading.Thread.Sleep(1000);
                //  终止此进程并为基础操作系统提供指定的退出代码。
                System.Environment.Exit(1);
            
        
    

 

我用c#编写的winform最小化到托盘了

如果双击桌面图标判断该程序是否运行如果运行调出托盘中该程序如果没有运行则启动该程序要怎么写啊???就想千千静听一样。这个或许需要用一个WINAPI函数SendMessage。其实大部分的WINAPI函数,C#都已经封装好,但是这次用到... 查看详情

最小化到托盘程序是啥意思?通俗点哈

...QQ,一开始登陆之后QQ界面是在桌面上显示的,当你点击最小化按钮之后,QQ就是最小化到托盘了。托盘就是windows界面的右下角那块区域,哪里还有显示时间、网络连接、声音图标。最小化大到托盘之后,程序就后台运行了。最... 查看详情

请问怎样使程序在最小化后图标放在任务栏的托盘上?

...图标会显示在系统托盘区域中。如果想将某个任务栏窗口最小化到系统托盘,可以直接在其窗口按钮上单击一下鼠标右键,然后在弹出的菜单中选择最下方的“最小化到托盘区”一项命令就行了,此时该窗口图标便移动到托盘中... 查看详情

怎么设置程序启动后最小化到托盘?

设了个自启动的程序,运行方式最小化,也设置了最小化到托盘。但启动后会先最小化到桌面下方,要打开在点击最小化才会到托盘。怎么设置程序启动后自动最小化到托盘?要实现将程序最小化到托盘,就要截获WM_SIZE消息,... 查看详情

winform之窗口最小化到托盘及右键图标显示菜单

日常开发有时候需要实现窗口最小化到系统托盘,本文就来讲讲该如何实现winfrom最小化到系统托盘,本例子基于VS2019编写。用C#开发winform桌面程序时,程序启动后,默认是显示在桌面而且在任务栏中有对应的图标... 查看详情

最小化到系统托盘区是啥意思?

...的快捷键没改过的话可以通过ctrl+alt+z打开参考技术A就是最小化到通知区域,程序没关闭,只是最小化了,而且放在显示时间那的“通知区域” 参考技术B就是最小化到屏幕右下角那里,那个区域就是系统托盘了。 查看详情

delphi-利用trztrayicon实现winfrm工程最小化到托盘(代码片段)

...后点击RC3.exe一键安装。    DelphiWinFrm工程最小化到托盘Delphi新建WinFrm工程,在主窗体上添加TRzTrayIcon、TImageList和TPopupMenu。此时运行工程,点击最小化即可实现到托盘的效果。  系统最小化时实现提示信息选... 查看详情

c#公共控件之notifyicon将窗口最小化到托盘

 1、设置窗体和notifyIcon属性notifyIcon ,添加contextMenuStrip控件并集成到notifyIcon 的ContextMenuStrip上。窗体2、代码usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.D 查看详情

c++builder托盘控件

想用c++builder写一个.exe,需要在最小化的时候放在托盘里,是不是有什么控件?用的控件是:TrayIcon具体用法如下:在BorlandC++Builder5.0中编写Tray程序是件很简单的事。在安装BorlandC++Builder5.0时选择Full(完全)安装,安装完成后,... 查看详情

【c#】winform中如何让窗口最小化时直接最小化到托盘,后台运行

...,为控件notifyIcon1的属性Icon添加一个icon图标。3.添加窗体最小化事件(首先需要添加事件引用):代码如下:this.SizeChanged+=newSystem.EventHandler(this.Form1_SizeChanged);//上面一行是主窗体InitializeComponent()方法中需要添加的引用privatevoidForm1_Siz... 查看详情

如何制作仅在系统托盘中运行的 .NET Windows 窗体应用程序?

...能使WindowsForms应用程序能够在系统托盘中运行?不是可以最小化到托盘的应用程序,而是只会存在于托盘中的应用程序,无非是一个图标工具提示和“ 查看详情

如何将我的桌面 Flutter 应用最小化到系统托盘?

】如何将我的桌面Flutter应用最小化到系统托盘?【英文标题】:HowtominimizemydesktopFlutterapptosystemtray?【发布时间】:2019-10-3008:49:33【问题描述】:我正在构建一个Flutter桌面应用程序,我希望让应用程序在系统托盘上继续运行,而... 查看详情

win10最小化到托盘游戏掉线

参考技术AWin10蓝牙鼠标总是频繁掉线的解决方法:1、右键单击屏幕右下角托盘区的蓝牙图标,在弹出的对话框中选中“允许蓝牙设备查找这台电脑”,再点击确定。2、右键单击屏幕左下角的Win图标>点击进入“设备管理器”>... 查看详情

vc如何实现关闭时最小化到托盘

点击X时最小化到托盘,最好给出完整的源代码。你给的这个答案,我已经在网上看过了,你的ToTray()是什么时候调用的尤其上你说的第二步,程序怎么就最小化到托盘区了我的邮箱:zhangjun_fy@163.com谢谢参考技术A一、托盘简介... 查看详情

最小化到系统托盘区是啥意思?

最小化到系统托盘区是什么意思?参考技术A就是把程序的窗口最小化后不在任务栏显示,而是只在系统托盘里显示一个图标,系统托盘就是显示声音那个小喇叭那里,那里一小条就是系统托盘 查看详情

如何在 Qt 中打开和最小化外部应用程序到系统托盘

】如何在Qt中打开和最小化外部应用程序到系统托盘【英文标题】:HowtoopenandminimizeexternalapptosystemtrayinQt【发布时间】:2019-04-0606:59:58【问题描述】:QProcess可以用来打开外部程序,但它总是会在所有其他窗口的前面打开一个应用... 查看详情

如何把程序最小化到托盘图标

参数及返回值说明:dwMessage:[输入参数]说明要执行的动作。动作的可选值如下:NIM_ADD增加一个图标到托盘区NIM_DELETE从托盘区删除一个图标NIM_MODIFY修改图标NIM_SETFOCUS将焦点(Focus)返回托盘区。这个消息通常在托盘区图标完成... 查看详情

C#全局热键在第一次最小化到托盘时不起作用,但在显示并再次最小化后它起作用

】C#全局热键在第一次最小化到托盘时不起作用,但在显示并再次最小化后它起作用【英文标题】:C#Globalhotkeyswon\'tworkinfirstminimizetotraybutaftershowingandminimizeagainitworks【发布时间】:2014-04-1308:48:54【问题描述】:对不起,如果我错... 查看详情