日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > windows >内容正文

windows

VC创建系统托盘

發布時間:2024/4/11 windows 44 豆豆
生活随笔 收集整理的這篇文章主要介紹了 VC创建系统托盘 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.


1.創建菜單資源? ID:? IDR_MENU_NOTIFY
??????????????? 添加子菜單? 顯示? IDM_NOTIFY_SHOW
??????????????????????????? 退出? IDM_NOTIFY_CLOSE
2.認識一個API
??????? Shell_NotifyIcon
???????? BOOL Shell_NotifyIcon(??????????????????? //向系統托盤中加入圖標
?????????????????????????? DWORD dwMessage,???????? //狀態????????? ?
?????????????????????????? PNOTIFYICONDATA lpdata?? //含有圖標? 消息響應 的一個結構體
???????? );

?3.認識NOTIFYICONDATA? 結構體:
?????????? typedef struct _NOTIFYICONDATA {
??? DWORD cbSize;?????? //結構體自身大小
??? HWND hWnd;????????? //托盤的父窗口? 托盤發出的消息由哪一個窗口響應
??? UINT uID;?????????? //顯示圖標的ID
??? UINT uFlags;???????? //托盤的狀態 (如有圖標,有氣泡提示,有消息響應等)
??? UINT uCallbackMessage; //托盤事件的消息響應函數
??? HICON hIcon;??????????? //圖標的變量
??? TCHAR szTip[64];??????? //氣泡的顯示文字
??? DWORD dwState;????????? //圖標的顯示狀態
??? DWORD dwStateMask;????? //圖標的顯示狀態
??? TCHAR szInfo[256];????? //氣泡的顯示文字? (可以忽略)
??? union {
??????? UINT uTimeout;
??????? UINT uVersion;
??? };
??? TCHAR szInfoTitle[64];
??? DWORD dwInfoFlags;
??? GUID guidItem;
??? HICON hBalloonIcon;
} NOTIFYICONDATA, *PNOTIFYICONDATA;

4.在oninitdialog函數中寫入加入系統脫盤的代碼:


??????? NOTIFYICONDATA nid; //這句話最好添加在頭文件里面
????? ?
??????? nid.cbSize = sizeof(nid);???? //大小賦值
?? ?nid.hWnd = m_hWnd;?????????? //父窗口
?? ?nid.uID = IDR_MAINFRAME;???? //icon? ID
?? ?nid.uFlags = NIF_MESSAGE | NIF_ICON | NIF_TIP;?? //托盤所擁有的狀態
?? ?nid.uCallbackMessage = UM_ICONNOTIFY;??????????? //回調消息
?? ?nid.hIcon = m_hIcon;??????????????????????????? //icon 變量
?? ?CString str="PCRemote遠程協助軟件.........";?????? //氣泡提示
?? ?lstrcpyn(nid.szTip, (LPCSTR)str, sizeof(nid.szTip) / sizeof(nid.szTip[0]));
?? ?Shell_NotifyIcon(NIM_ADD, &nid);?? //顯示托盤

5.演示 ,在窗口銷毀時托盤依然存在

6.添加WM_CLOSE消息并寫入代碼:
????? Shell_NotifyIcon(NIM_DELETE, &nid); //銷毀圖標

7.stdafx.h文件中加入自定義消息的定義
???? //自定義消息
enum
{
?? ?UM_ICONNOTIFY= WM_USER+0x100,
};


8.聲明消息處理函數:
???? afx_msg void OnIconNotify(WPARAM wParam,LPARAM lParam);


9.? cpp文件中寫入代碼:
?????? void CPCRemoteDlg::OnIconNotify(WPARAM wParam, LPARAM lParam)
{
?? ?switch ((UINT)lParam)
?? ?{
?? ?case WM_LBUTTONDOWN: // click or dbclick left button on icon
?? ?case WM_LBUTTONDBLCLK: // should show desktop
?? ??? ?if (!IsWindowVisible())
?? ??? ??? ?ShowWindow(SW_SHOW);
?? ??? ?else
?? ??? ??? ?ShowWindow(SW_HIDE);
?? ??? ?break;
?? ?case WM_RBUTTONDOWN: // click right button, show menu
?? ??? ?CMenu menu;
?? ??? ?menu.LoadMenu(IDR_MENU_NOTIFY);
?? ??? ?CPoint point;
?? ??? ?GetCursorPos(&point);
?? ??? ?SetForegroundWindow();
?? ??? ?menu.GetSubMenu(0)->TrackPopupMenu(
?? ??? ??? ?TPM_LEFTBUTTON|TPM_RIGHTBUTTON,
?? ??? ??? ?point.x, point.y, this, NULL);
?? ??? ?PostMessage(WM_USER, 0, 0);
?? ??? ?break;
?? ?}
}


10.添加消息響應:
?? ?ON_MESSAGE(UM_ICONNOTIFY,OnIconNotify) ?

11.添加顯示菜單消息響應
?? ?














1.創建菜單資源? ID:? IDR_MENU_NOTIFY
??????????????? 添加子菜單? 顯示? IDM_NOTIFY_SHOW
??????????????????????????? 退出? IDM_NOTIFY_CLOSE
2.認識一個API
??????? Shell_NotifyIcon
???????? BOOL Shell_NotifyIcon(??????????????????? //向系統托盤中加入圖標
?????????????????????????? DWORD dwMessage,???????? //狀態????????? ?
?????????????????????????? PNOTIFYICONDATA lpdata?? //含有圖標? 消息響應 的一個結構體
???????? );

?3.認識NOTIFYICONDATA? 結構體:
?????????? typedef struct _NOTIFYICONDATA {
??? DWORD cbSize;?????? //結構體自身大小
??? HWND hWnd;????????? //托盤的父窗口? 托盤發出的消息由哪一個窗口響應
??? UINT uID;?????????? //顯示圖標的ID
??? UINT uFlags;???????? //托盤的狀態 (如有圖標,有氣泡提示,有消息響應等)
??? UINT uCallbackMessage; //托盤事件的消息響應函數
??? HICON hIcon;??????????? //圖標的變量
??? TCHAR szTip[64];??????? //氣泡的顯示文字
??? DWORD dwState;????????? //圖標的顯示狀態
??? DWORD dwStateMask;????? //圖標的顯示狀態
??? TCHAR szInfo[256];????? //氣泡的顯示文字? (可以忽略)
??? union {
??????? UINT uTimeout;
??????? UINT uVersion;
??? };
??? TCHAR szInfoTitle[64];
??? DWORD dwInfoFlags;
??? GUID guidItem;
??? HICON hBalloonIcon;
} NOTIFYICONDATA, *PNOTIFYICONDATA;

4.在oninitdialog函數中寫入加入系統脫盤的代碼:


??????? NOTIFYICONDATA nid; //這句話最好添加在頭文件里面
????? ?
??????? nid.cbSize = sizeof(nid);???? //大小賦值
?? ?nid.hWnd = m_hWnd;?????????? //父窗口
?? ?nid.uID = IDR_MAINFRAME;???? //icon? ID
?? ?nid.uFlags = NIF_MESSAGE | NIF_ICON | NIF_TIP;?? //托盤所擁有的狀態
?? ?nid.uCallbackMessage = UM_ICONNOTIFY;??????????? //回調消息
?? ?nid.hIcon = m_hIcon;??????????????????????????? //icon 變量
?? ?CString str="PCRemote遠程協助軟件.........";?????? //氣泡提示
?? ?lstrcpyn(nid.szTip, (LPCSTR)str, sizeof(nid.szTip) / sizeof(nid.szTip[0]));
?? ?Shell_NotifyIcon(NIM_ADD, &nid);?? //顯示托盤

5.演示 ,在窗口銷毀時托盤依然存在

6.添加WM_CLOSE消息并寫入代碼:
????? Shell_NotifyIcon(NIM_DELETE, &nid); //銷毀圖標

7.stdafx.h文件中加入自定義消息的定義
???? //自定義消息
enum
{
?? ?UM_ICONNOTIFY= WM_USER+0x100,
};


8.聲明消息處理函數:
???? afx_msg void OnIconNotify(WPARAM wParam,LPARAM lParam);


9.? cpp文件中寫入代碼:
?????? void CPCRemoteDlg::OnIconNotify(WPARAM wParam, LPARAM lParam)
{
?? ?switch ((UINT)lParam)
?? ?{
?? ?case WM_LBUTTONDOWN: // click or dbclick left button on icon
?? ?case WM_LBUTTONDBLCLK: // should show desktop
?? ??? ?if (!IsWindowVisible())
?? ??? ??? ?ShowWindow(SW_SHOW);
?? ??? ?else
?? ??? ??? ?ShowWindow(SW_HIDE);
?? ??? ?break;
?? ?case WM_RBUTTONDOWN: // click right button, show menu
?? ??? ?CMenu menu;
?? ??? ?menu.LoadMenu(IDR_MENU_NOTIFY);
?? ??? ?CPoint point;
?? ??? ?GetCursorPos(&point);
?? ??? ?SetForegroundWindow();
?? ??? ?menu.GetSubMenu(0)->TrackPopupMenu(
?? ??? ??? ?TPM_LEFTBUTTON|TPM_RIGHTBUTTON,
?? ??? ??? ?point.x, point.y, this, NULL);
?? ??? ?PostMessage(WM_USER, 0, 0);
?? ??? ?break;
?? ?}
}


10.添加消息響應:
?? ?ON_MESSAGE(UM_ICONNOTIFY,OnIconNotify) ?

11.添加顯示菜單消息響應
?? ?












總結

以上是生活随笔為你收集整理的VC创建系统托盘的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 亚洲伦理影院 | 国产又粗又硬视频 | 日韩avxxx | 性开放视频 | 欧美日韩一区二区三区 | 亚洲精品香蕉 | 91精品人妻一区二区三区蜜桃2 | 国产视频手机在线观看 | 一级黄色片国产 | 99热这里只有精 | 波多野吉衣av无码 | 理论片午午伦夜理片影院99 | 久久天| 日本黄色一区二区三区 | 日韩av女优在线观看 | 久久理伦 | 欧美高清v | 免费插插视频 | 影音先锋国产 | 亚洲专区在线 | 91人妻一区二区 | 91在线播放视频 | 久久天天躁狠狠躁夜夜av | 一级特级毛片 | 51调教丨国产调教视频 | 丝袜 亚洲 另类 欧美 重口 | 手机看片国产日韩 | 欧美精品v国产精品v日韩精品 | av在线资源 | 国产精品国产a级 | 国产日韩欧美视频在线观看 | 国产一卡二卡在线播放 | 欧美成人黄色网 | 国产伦理吴梦梦伦理 | 欧美14sex性hd摘花 | 91网站永久免费看nba视频 | 蜜臀av性久久久久蜜臀aⅴ麻豆 | 可以免费看的黄色 | 欧美精品四区 | 国产六区 | 免费看成人| 国产情侣呻吟对白高潮 | 在线高清观看免费 | 最近国语视频在线观看免费播放 | 国内精品99| jizzjizzjizz国产| 超碰66| 美女啪啪网 | 久久中文字幕一区 | 久草福利在线视频 | 欧美激情精品久久久久久免费 | 香蕉久久夜色精品国产使用方法 | 亚洲一区二区三区电影 | 日本男男激情gay办公室 | 黄色香蕉网站 | av字幕在线 | 四虎1515hh.com | 国产精品美女久久久久图片 | 国产一区网 | 国产不卡视频在线观看 | 老司机午夜视频 | 四虎激情 | 综合久久91 | 中文字幕乱码视频 | 精品中文字幕在线播放 | 华丽的外出在线观看 | 在线观看黄色片 | 黄色av免费观看 | 九九精品在线播放 | 免费萌白酱国产一区二区三区 | 999久久久久久久久6666 | 国产精品123区 | 久久国产免费 | 蜜桃av噜噜一区二区三区网址 | 国产精品福利一区 | 中文字幕在线视频第一页 | 在线观看视频国产 | 好吊视频一区 | 亚洲看看 | 少妇高潮一69aⅹ | 国产小视频在线看 | 亚洲手机av| 欧美五月婷婷 | 欧美成人h版 | 99久久久无码国产精品免费蜜柚 | 粉嫩av| 成年人在线观看视频 | 亚洲成人黄色在线 | 91www | 亚洲精品www久久久久久广东 | 少妇一边呻吟一边说使劲视频 | 天天色综合1 | 亚洲欧美亚洲 | 日本一区不卡 | feel性丰满白嫩嫩hd | 亚洲国产精品久久 | 18久久| 91porn破解版 | 69视频污 |