就是把它的主体对话框显示出来.
并且在托盘区按右键时有几个命令得选择的.

解决方案 »

  1.   

    首先你在建立托盘的时候,需要自定义一个消息比如
    m_tnid.uCallbackMessage =WM_SHOWTASK;
    然后再
    LRESULT CMainFrame::WindowProc(UINT message, WPARAM wParam, LPARAM lParam) 
    {
    {
    if(message==WM_SHOWTASK){
     switch(lParam)
        {
            case WM_RBUTTONUP://右键起来时弹出快捷菜单,这里只有一个“关闭”
    {        LPPOINT lpoint=new tagPOINT;
            ::GetCursorPos(lpoint);//得到鼠标位置
            CMenu menu;
            menu.CreatePopupMenu();//声明一个弹出式菜单
            //增加菜单项“关闭”,点击则发送消息WM_DESTROY给主窗口(已
            //隐藏),将程序结束。
    menu.AppendMenu(NULL,ID_APP_EXIT,"Exit");
    menu.AppendMenu(NULL,IDC_START,"Start/Stop");
    // menu.AppendMenu(NULL,ID_VIEW_INFO,"Information");        //确定弹出式菜单的位置
            menu.TrackPopupMenu(TPM_LEFTALIGN,lpoint->x,lpoint->y,this);
            //资源回收
            HMENU hmenu=menu.Detach();
            menu.DestroyMenu();
            delete lpoint;
        }
        break;
        case WM_LBUTTONDBLCLK://双击左键的处理
        {
            AfxGetApp()->m_pMainWnd->ShowWindow (SW_SHOW);//简单的显示主窗口完事儿
           AfxGetApp()->m_pMainWnd->SetForegroundWindow();
     notice=false;
     AfxGetApp()->m_pMainWnd->SendMessage(WM_COMMAND,ID_LIGHT);
         
    }
        break;
        }
    }
    }
    网上资料很多,找一下
      

  2.   

    如果是一个对话框如此,建立一个右键菜单的响应函数:void CAbclg::OnMnurestore() 
    {
    AfxGetApp()->m_pMainWnd->ShowWindow(SW_SHOW);

    }
      

  3.   

    到www.vckbase.com找,有现成的例子
      

  4.   

    vckbase有个巨好的类 
    看看去http://www.vckbase.com/document/viewdoc.asp?id=498
      

  5.   

    我自己没试:纸上谈兵:)
    显示窗口:
    用SPY查到托盘中显示主窗口菜单的消息。
    找到程序的主窗口句柄,对主窗口发送上述消息,或许
      

  6.   

    我这里倒是有一个类,专门为增、删、改托盘图标和如何激活应用程序而作的。不过,是用C++Builder写的:),你要激活你的应用程序,我觉得你只需要拦截WM_LBUTTONUP就可以了吧?反正我是这样做的,也不存在什么不妥之处。