添加系统栏图标

来源:互联网 发布:ssh命令连接linux 编辑:程序博客网 时间:2022/01/17 06:01
 

系统栏图标添加方法:(以CDialog为例)

1,Dialog类中加入显示系统栏图标的变量 NOTIFYICONDATAm_NotifyIcon;

2,Dialog类中加入消息处理函数afx_msg LRESULT OnNotifyIcon(WPARAM wParam,LPARAM lParam) 来响应对系统栏图标的响应。

3,BEGIN_MESSAGE_MAP(),END_MESSAGE_MAP()中间添加消息处理映射ON_MESSAGE(WM_NC,&CMyCPL2Dlg::OnNotifyIcon)

4,Dialog类的初始化函数OnInitDialog()中添加系统栏图标初始化:

m_NotifyIcon.cbSize= sizeof(NOTIFYICONDATA);//

m_NotifyIcon.hIcon= AfxGetApp()->LoadIcon(IDI_MYCPLDLG);//图标图案

m_NotifyIcon.hWnd = m_hWnd;//

lstrcpy(m_NotifyIcon.szTip,"UVC Control");//鼠标指示时显示提示

m_NotifyIcon.uCallbackMessage= WM_NC;//消息响应函数

m_NotifyIcon.uFlags= NIF_ICON | NIF_TIP | NIF_MESSAGE;//图标类型

Shell_NotifyIcon(NIM_ADD,&m_NotifyIcon);//系统栏添加图标

5,添加消息响应函数

LRESULT CMyCPL2Dlg::OnNotifyIcon(WPARAMwParam, LPARAMlParam)

{

                        if((lParam == WM_LBUTTONDOWN))// Lbutton down

                        {

                                ModifyStyleEx(0,WS_EX_TOPMOST);

                                ShowWindow(SW_SHOW);    //Show Main Window

                                //Shell_NotifyIcon(NIM_DELETE,&NotifyIcon);

                    }

                              //...                   

            }

6,如果有需要,可以在关闭对话框时删除系统栏图标。添加函数DestroyWindow()

BOOL CMyCPL2Dlg::DestroyWindow()

{

                        // TODO: Addyour specialized code here and/or call the base class

                        Shell_NotifyIcon(NIM_DELETE, &m_NotifyIcon);    // Delete Icon

                        return CDialog::DestroyWindow();

}

原创粉丝点击
热门问题 编写一个应用程序绘制一个如下的操作菜单并实现功能(定义一个类学生表示学生,有成员变量姓名name和年 手机是现在人们必不可少、最重要的通讯工具,拥有一款简单、实用、易用的手机通讯录,将会使你的手机更加好 手机是现在人们必不可少、最重要的通讯工具,拥有一款简单、实用、易用的手机通讯录,将会使你的手机更加好 编写一个应用程序绘制一个如下的操作菜单并实现功能(定义一个类学生表示学生,有成员变量姓名name和年 平坦衰落信道 平坦衰落信道2FSK差错性能分析 1204:剔除相关数 Minecraft 编写一个应用程序绘制一个如下的操作菜单并实现功能(定义一个类学生表示学生,有成员变量姓名name和年 2023 创业板退市制度 创业板股票退市条件 退市整理期 绿大地退市 股票退市规则 创业板会退市吗 tom在线 退市 st退市规则 退市后重新上市的股票 暂停上市与退市区别 夏新电子退市 中概股退市 扬子石化退市 长生生物强制退市 长生生物即将退市k 2019天天富翁退市公告 股票st后多久退市 st股什么时候退市 依折麦布片在美国退市 长生生物收到强制退市 创业板亏损几年退市 退房申请书 如何退房 退房怎么退 退房英文怎么说 退房条件 怎么退房 退房英语怎么说 商品房退房流程 如家酒店几点退房 退换货流程 退换货 淘宝退换货 京东 退换货 退换 7天无理由退换货 京东无理由退换货规则 汽车三包法退换车条件 七天无理由退换货 淘宝退换货流程 实体店七天退换货规则