日期:2014-05-19  浏览次数:20883 次

c#中窗体实现隐藏,任务栏为什么无图标?再怎样弹出显示?
c#中窗体实现隐藏,任务栏为什么无图标?用了notifyIcon控件,也载入了图标,notifyIcon怎么用才能显示在窗体上,可以单击触发隐藏!
我用的是一个PictureBox载入图片,单击调用notifyIcon单击事件.
也能隐藏就是任务栏里没有图标?
希望在右下角的任务栏有个图标,单击后能弹出.
当在隐藏状态下,用一个方法让窗体显示出来,怎么才能让显示在屏幕最前面?我在方法里写了   this.TopMost   =   true;也是不显示到前面,只在任务栏上??

------解决方案--------------------
建立一个 contextMenu1 上面有4个菜单项,miShowWindow,miShowIcon,miShowAll,miExit
然后设置主窗体和notifyIcon(此处实例是ni)的contextMenu为此contextMenu1,单击菜单可以看到效果,如果最小化也要推到托盘的话,可能要用到其它事件


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

namespace Notify
{
public partial class Notify : Form
{
public Notify()
{
InitializeComponent();
}

private void miShowWindow_Click(object sender, EventArgs e)
{
//显示窗体
this.Visible = true;
this.ni.Visible = false;
}

private void miShowAll_Click(object sender, EventArgs e)
{
//显示全部
this.Visible = true;
this.ni.Visible = true;
}

private void miShowIcon_Click(object sender, EventArgs e)
{
//显示托盘
this.Visible = false;
this.ni.Visible = true;
}

private void miExit_Click(object sender, EventArgs e)
{
Application.Exit();
}

private void ni_Click(object sender, EventArgs e)
{
//显示托盘
miShowWindow_Click(sender, e);
}
}
}
------解决方案--------------------
请确认Form的ShowInTaskbar的值
------解决方案--------------------
notifyIcon和Form可以分别独立的来考虑;确定notifyIcon的Icon正确了,不是空引用;notifyIcon的Visilble是否设成True。
------解决方案--------------------
用控件属性无效
自己写代码写到Formload中
notifyIcon1.Icon = new Icon( "D:\\pda.ico ", 16, 16);
刚试过