[.Net] 怎样让程序打开时后台运行?

perrycoy 2011-06-21 04:42:27
欲将软件打开时只显示托盘小图标
我如下设置了
notify1.Visible = true;
this.Hide();
this.Visible = false;
但是build完之后运行还是显示主界面!

private void notify1_Click(object sender, EventArgs e)
{
this.TopMost = true;
notify1.Visible=true ;
this.Visible = true ;
this.Show();
this.WindowState = FormWindowState.Normal;
}


我只想在运行时显示小图标,点击小图标才显示主界面 应该怎么做?????
...全文
237 21 打赏 收藏 转发到动态 举报
写回复
用AI写文章
21 条回复
切换为时间正序
请发表友善的回复…
发表回复
perrycoy 2011-06-22
  • 打赏
  • 举报
回复
非常感谢 14楼的方法好用
ksyysk 2011-06-22
  • 打赏
  • 举报
回复
学习 ~
meic1985 2011-06-22
  • 打赏
  • 举报
回复
学习 ~
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 lovesongforever 的回复:]
WindowState为Minimize
this.Hide();
[/Quote]up
netstray 2011-06-22
  • 打赏
  • 举报
回复
路过学习……
zhouxingyu896 2011-06-22
  • 打赏
  • 举报
回复
楼主可以看看15楼给出的例子,应该有帮助
jq_whh 2011-06-21
  • 打赏
  • 举报
回复
这段代码,程序启动后只在通知栏内显示图标,左键点击图标显示窗体;点击关闭窗体按钮窗体消失,在通知栏内显示图标;右击图标弹出菜单,可以显示窗体或者关闭。
http://download.csdn.net/source/3338539
jq_whh 2011-06-21
  • 打赏
  • 举报
回复
使用NotifyIcon控件,

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace notify
{
public partial class Form1 : Form
{

public Form1()
{
InitializeComponent();
}

private void Form1_Shown(object sender, EventArgs e)
{
this.Visible = false;
notifyIcon1.Visible = true;
notifyIcon1.Icon = this.Icon;
}

private void notifyIcon1_MouseClick(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Left)
{
notifyIcon1.Visible = true;
this.Show();
this.WindowState = FormWindowState.Normal;
}
else
{
Point pt = new Point();
pt = Control.MousePosition;
contextMenuStrip1.Show(pt);
}
}

private void ToolStripMenuItem_Show_Click(object sender, EventArgs e)
{
this.Show();
this.WindowState = FormWindowState.Normal;
}

private void ToolStripMenuItem_Exit_Click(object sender, EventArgs e)
{
notifyIcon1 = null;
this.Close();
}

private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
if (notifyIcon1 != null)
{
e.Cancel = true;
this.Visible = false;
}
}
}
}
perrycoy 2011-06-21
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 lovesongforever 的回复:]

WindowState为Minimize
this.Hide();
[/Quote]我试过了
不知道为啥,在桌面的左下角任务栏的上方还是会显示最小化的那个窗口。
Iamagril 2011-06-21
  • 打赏
  • 举报
回复
路过的,顶下
mrsupersky 2011-06-21
  • 打赏
  • 举报
回复
10楼的可能更高明,更简单,你可以试试
「已注销」 2011-06-21
  • 打赏
  • 举报
回复
visable设置为false差不多吧,或者只实例化不调用show方法
mrsupersky 2011-06-21
  • 打赏
  • 举报
回复
还有至于显示逻辑
if(this.visible)
{
this.Visible=false;//也可以是hide()
}
else
{
this.Visible=true;//也可以是show()
}
mrsupersky 2011-06-21
  • 打赏
  • 举报
回复
顺便说一下,实现这个ApplicationContext没什么难的,只要继承一下,重写一个方法就行了,那个函数好像是叫Application_Exit吧
你自己琢磨琢磨
garfieldzf 2011-06-21
  • 打赏
  • 举报
回复
单击图标时:
if (this.WindowState ==WindowState.Minimized)
{
this.WindowState = FormWindowState.Maximized;
this.Show();
this.Activate();
this.Focus();
}
jacklybin 2011-06-21
  • 打赏
  • 举报
回复
//隐藏窗口,在后台运行
this.ShowInTaskbar = false;
this.WindowState = FormWindowState.Minimized;
garfieldzf 2011-06-21
  • 打赏
  • 举报
回复
WindowState为Minimize
this.Hide();
mrsupersky 2011-06-21
  • 打赏
  • 举报
回复
可以从另一方面入手嘛,
Application.Run()方法不是还有ApplicationContext参数的。。。
自己实现一个继承自ApplicationContext类的类不就可以了,而且这种方法,窗体何时显示完全看你自己的代码的实现
Visible=false什么的这一类方法好像都会闪一下然后才消失的吧。

zhantianyou 2011-06-21
  • 打赏
  • 举报
回复
在构造函数中
WPF this.Visibility = Visibility.Hidden;
WinForm this.Visible=false
应该,你测试下
daifei4451 2011-06-21
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 bdmh 的回复:]
设置窗体的WindowState为Minimize
[/Quote]

+1
加载更多回复(1)
vs 2017 git成功 miyao 亲测可行 1.注册 ssh key 本地方生成 复制到远端 2. 远端建立仓库 3.在 网站上点击sourcetree 会自动打开本地sourcetree 。 本地先安装 好sourcetree ,并注册一下 4.sourcetree拉取远端文件 5.在vs中打开 自动可以操作了 在线购物商城微信小程序前端和后台源码 源码描述: 一、源码特点 在线购物商城微信小程序前端和后台数据管理系统源码,使用.net开发,测试无Bug,感兴趣的欢迎下载 二、微信小程序功能 1、 会员自动授权登录注册 2、 产品分类、产品检索、产品筛选、产品详情、 3、 广告展示、 4、 购物车 6、 收货地址 7、 订单提交微信支付 8、 订单检索等功能 三、后台功能 1、 后台会员系统:会员列表、会员基本信息,积分明细、余额明细、购物记录、收货地址(在系统设置的频道管理可以开启此功能) 2、 后台系统设置:导航栏目、分类管理、 OAuth设置 、支付设置、扩展字段 、频道管理、模型管理、站点基本信息等功能设置 3、 订单管理:在线购物订单查看、发货、确认 4、 产品管理:分类管理 、产品管理 、 积分产品管理 四、注意事项 1、开发环境为Visual Studio 2010,数据库为SQLServer2008,使用.net 4.0开发。 2、管理员登陆名:admin 密码:admin888 3、默认数据库连接字符串在webconfig配置文件中修改 4、DB文件夹中是数据库脚本文件,使用sqlerver工具运行即可 5、cmsWeb文件夹里面是api接口后台 xcx文件夹是微信小程序 DataBase文件夹是数据库文件
vs 2017 git成功 miyao 亲测可行 1.注册 ssh key 本地方生成 复制到远端 2. 远端建立仓库 3.在 网站上点击sourcetree 会自动打开本地sourcetree 。 本地先安装 好sourcetree ,并注册一下 4.sourcetree拉取远端文件 5.在vs中打开 自动可以操作了 在线购物商城微信小程序前端和后台源码 源码描述: 一、源码特点 在线购物商城微信小程序前端和后台数据管理系统源码,使用.net开发,测试无Bug,感兴趣的欢迎下载 二、微信小程序功能 1、 会员自动授权登录注册 2、 产品分类、产品检索、产品筛选、产品详情、 3、 广告展示、 4、 购物车 6、 收货地址 7、 订单提交微信支付 8、 订单检索等功能 三、后台功能 1、 后台会员系统:会员列表、会员基本信息,积分明细、余额明细、购物记录、收货地址(在系统设置的频道管理可以开启此功能) 2、 后台系统设置:导航栏目、分类管理、 OAuth设置 、支付设置、扩展字段 、频道管理、模型管理、站点基本信息等功能设置 3、 订单管理:在线购物订单查看、发货、确认 4、 产品管理:分类管理 、产品管理 、 积分产品管理 四、注意事项 1、开发环境为Visual Studio 2010,数据库为SQLServer2008,使用.net 4.0开发。 2、管理员登陆名:admin 密码:admin888 3、默认数据库连接字符串在webconfig配置文件中修改 4、DB文件夹中是数据库脚本文件,使用sqlerver工具运行即可 5、cmsWeb文件夹里面是api接口后台 xcx文件夹是微信小程序 DataBase文件夹是数据库文件

110,533

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧