在主对话框中再弹出一个对话框,要求在任务栏中显示这个后弹出对话框的小图标?请各位高手帮帮忙?

解决方案 »

  1.   

    在任务栏状态区如何显示应用程序图标  有关的数据由NOTIFYICONDATA结构描述:typedef struct _NOTIFYICONDATA
    {
    DWORD cbSize; //结构的大小,必须设置
    HWND hWnd; //接受回调消息的窗口的句柄
    UINT uID; //应用程序定义的图标标志
    UINT uFlags; //标志,可以是NIF_ICON、NIF_MESSAGE、NIF_TIP或其组合
    UINT uCallbackMessage;//应用程序定义的回调消息标志
    HICON hIcon; //图标句柄
    char szTip[64]; //提示字串
    } NOTIFYICONDATA, *PNOTIFYICONDATA;   函数说明  由Shell_NotifyIcon()函数向系统发送添加、删除、更改图标的消息。WINSHELLAPI BOOL WINAPI Shell_NotifyIcon(DWORD dwMessage,PNOTIFYICONDATA pnid);   DwMessage为所发送消息的标志:   NIM_ADD 添加图标到任务栏通知区;   NIM_DELETE 删除任务栏通知区的图标;   NIM_MODIFY 更改任务栏通知区的图标、回调消息标志、回调窗口句柄或提示字串;   pnid为NOTIFYICONDATA结构的指针。  回调信息的获得及处理  如果一个任务栏图标有应用程序定义的回调消息,那么当这个图标有鼠标操作时,系统将给hWnd所标志的窗口发送下列的消息:
    messageID = uCallbackMessage
    wParam = uID
    lParam = mouse event(例如WM_LBUTTONDOWN)   通过这种方式,系统通知应用程序用户对图标的操作。如果一个应用程序生成了两个以上的图标,那么你可以根据wParam来判断是哪个图标返回的鼠标操作。通常,标准的Win95任务栏图标有以下鼠标操作响应:  当鼠标停留在图标上时,系统应显示提示信息tooltip;  当使用鼠标右键单击图标时,应用程序应显示快捷菜单;  当使用鼠标左键双击图标时,应用程序应执行快捷菜单的缺省菜单项。  在Microsoft Windows环境中,0x8000到0xBFFF的消息是保留的,应用程序可以定义自定义消息。