博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
托盘程序(WinForm)
阅读量:5012 次
发布时间:2019-06-12

本文共 2412 字,大约阅读时间需要 8 分钟。

1、托盘显示的标题、内容、图标等信息在界面设置。

2、后台代码

public partial class Form1 : Form     {
public Form1() {
InitializeComponent(); } private void Form1_FormClosing(object sender, FormClosingEventArgs e) {
if (this.Visible == true) {
e.Cancel = true; this.Visible = false; } } private void notifyIcon1_MouseClick(object sender, MouseEventArgs e) {
if (e.Button == MouseButtons.Left) {
this.Visible = true; this.WindowState = FormWindowState.Normal; } } private void 退出ToolStripMenuItem_Click(object sender, EventArgs e) {
this.Visible = false; Application.Exit(); } }

修改Program.cs

static class Program {
[DllImport("user32.dll")] public static extern IntPtr FindWindow(string lpClassName, string lpWindowName); [DllImport("user32.dll ")] static extern void SwitchToThisWindow(IntPtr hWnd, bool fAltTab); [DllImport("User32.dll")] private static extern bool SetForegroundWindow(IntPtr hWnd); [DllImport("User32.dll")] private static extern bool ShowWindowAsync(IntPtr hWnd, int cmdShow); public static IntPtr formhwnd; /// /// 应用程序的主入口点。 /// [STAThread] static void Main() {
Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); bool createdNew; Mutex mutex = new Mutex(false, "Notify", out createdNew); if (!createdNew) {
Process instance; Process currentProcess = Process.GetCurrentProcess(); Process[] process = Process.GetProcessesByName(currentProcess.ProcessName); for (int i = 0; i < process.Length; i++) {
if (process[i].Id != currentProcess.Id) {
instance = process[i]; if (instance.MainWindowHandle != IntPtr.Zero) {
SwitchToThisWindow(instance.MainWindowHandle, true); } else {
formhwnd = FindWindow(null, "Form1"); ShowWindowAsync(formhwnd, 1); SetForegroundWindow(formhwnd); } return; } } } Form1 form = new Form1(); Application.Run(form); } }

 

转载于:https://www.cnblogs.com/zhaoyanzhe/archive/2011/12/29/2305748.html

你可能感兴趣的文章
py自动化之环境配置
查看>>
Winodws SNMP服务安装和配置(Windows 2003 & 2008 R2)
查看>>
红黑树-想说爱你不容易
查看>>
【题目】英文字符进行频率的统计,直方图输出
查看>>
LeetCode-Binary Tree Level Order Traversal
查看>>
COM组件开发实践
查看>>
yii2 源码分析1从入口开始
查看>>
浅谈网站推广
查看>>
Away3D基础之摄像机
查看>>
Leetcode 128. Longest Consecutive Sequence
查看>>
程序员必须知道的几个Git代码托管平台
查看>>
导电塑料入梦来
查看>>
C# 线程手册 第五章 扩展多线程应用程序 - 什么是线程池
查看>>
笔记1126ASP.NET面试题(转)
查看>>
考研路茫茫--单词情结 - HDU 2243(AC自动机+矩阵乘法)
查看>>
HTTP运行期与页面执行模型
查看>>
tableView优化方案
查看>>
近期思考(2019.07.20)
查看>>
Apache2.4使用require指令进行访问控制
查看>>
冗余关系_并查集
查看>>