成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

怎樣實現Visual C++系統托盤

開發 后端
下文著重介紹一下Visual C++開發這類程序的設計方法,這些內容都是一些門戶網站和技術論壇找到的,中間可能有不妥當的問題,歡迎大家學習指正。

微軟中國公司與1993年推出的Visual C++1.0后,Visual C++已成為專業程序員進行軟件開發的首選工具,隨著時代的進步科技的發展Visual C++版本也快速的提升與升級,Visual C++開發也變成了一件容易的事情了。

這些程序運行時不顯示運行窗口,只在任務欄上顯示一個圖標,表示程序正在運行,用戶可以通過鼠標與應用程序交互,程序開發人員有時也需要編制一些僅在后臺運行的類似程序,為了不干擾前臺程序的運行界面和不顯示不必要的窗口,應使程序運行時的主窗口不可見。

同時將一個圖標顯示在任務欄右端靜態通告區中并響應用戶的鼠標動作。本實例就介紹Visual C++開發這類程序的設計方法,該程序編譯運行后,如果雙擊托盤圖標,程序會彈出一個消息列表窗口,只要鼠標在托盤圖標上移動或點擊(無論是左右鍵的單擊或雙擊),產生的消息都會顯示在這個窗口里;當鼠標光標移到托盤圖標上時,在圖標附近會顯示提示信息;#t#

單擊右鍵時彈出上下文菜單,這個菜單中應包含打開屬性頁的命令或者打開與圖標相關的其它窗口的命令,另外,該程序還可以動態的改變托盤的圖標。參照這個例子,相信讀者能輕松自如地在自己的程序中應用系統托盤。

一、實現方法

為了實現拖盤程序,首先要使程序的主窗口不可見,這點實現起來十分容易,只要調用ShowWindow(SW_HIDE)就可以了,本實例采用的就是這種方法,還有一種思路是通過分別設置主邊框窗口的風格和擴展風格來隱藏主框架:

  1.   BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs)   
  2.  
  3.   {   
  4.  
  5.    cs.style =WS_POPUP;//使主窗口不可見;   
  6.  
  7.    cs.dwExStyle  =WS_EX_TOOLWINDOW;//不顯示任務按鈕;   
  8.  
  9.    return CFrameWnd::PreCreateWindow(cs);   
  10.  
  11.   }  

在任務條上顯示圖標是利用系統API函數Shell_NotifyIcon()來將一個圖標顯示在任務欄的通告區中。該函數的原型為:  

  1.   BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs)   
  2.  
  3.   {   
  4.  
  5.    cs.style =WS_POPUP;//使主窗口不可見;   
  6.  
  7.    cs.dwExStyle  =WS_EX_TOOLWINDOW;//不顯示任務按鈕;   
  8.  
  9.    return CFrameWnd::PreCreateWindow(cs);   
  10.  
  11.   }  

在該結構的成員中,cbSize為該結構所占的字節數,hWnd為接受該圖標所發出的消息的窗口的句柄(鼠標在任務欄上程序圖標上動作時圖標將發出消息,這個消息用戶要自己定義),uID為被顯示圖標的ID,uFlags指明其余的幾個成員(hIcon、uCallBackMessage和szTip)的值是否有效。

uCallbackMessage為一個用戶自定義的消息,當用戶在該圖標上作用一些鼠標動作時,圖標將向應用程序的主框架窗口(hWnd成員中指定的窗口)發出該消息,為了使程序的主框架得到該通知消息,Visual C++開發需要設置NOTIFYICONDATA 結構的flag成員的值為NIF_MESSAGE。hIcon為將在任務欄上顯示的圖標句柄,szTip鼠標停留在該圖標上時顯示的提示字符串。

【編輯推薦】

  1. 簡介學習C++總結之談
  2. 對C++庫函數進行學習探索總結筆記
  3. C++類庫設計的基本構思與方法
  4. C++語言真的還有市場價值?
  5. C++類庫設計的基本構思與方法
責任編輯:chenqingxiang 來源: 51CTO.com
相關推薦

2012-01-17 10:43:26

Java

2011-04-21 13:46:54

Ubuntu Unit

2009-02-22 09:11:16

Windows音量顯示

2011-04-18 15:33:33

Ubuntu 11.0

2011-08-23 09:33:19

Ubuntu系統托盤

2010-01-18 14:41:52

Visual C++開

2025-04-25 09:35:39

WinformWindows系統托盤

2011-01-19 14:40:45

Thunderbird

2020-03-06 08:00:02

Multipass系統虛擬機

2022-12-17 17:00:21

Windows 11微軟

2010-01-11 11:02:59

Visual C++

2010-01-18 15:40:37

Visual C++工

2010-01-15 14:52:33

Visual C++

2010-01-22 13:59:34

Visual C++應

2010-01-25 10:25:19

C++變量

2010-01-28 16:16:32

C++多態性

2009-11-12 10:05:09

Visual C++

2009-11-12 11:00:56

Visual C++

2010-01-20 14:35:55

C++調用

2011-06-07 13:44:40

VC
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 欧美在线一区视频 | 日本免费视频在线观看 | 中文成人无字幕乱码精品 | 欧美日韩不卡合集视频 | 成人黄色在线观看 | 欧美精品一区免费 | 一区二区三区成人 | 亚洲国产视频一区二区 | 国产精品亚洲一区二区三区在线 | 干干干操操操 | 成人在线观看网站 | 欧美日韩在线观看一区 | 日韩一区二区三区在线视频 | 久久一区二区三区免费 | 日韩欧美一区二区三区免费观看 | 亚洲综合资源 | 国产精品一区三区 | 91在线一区 | 日韩精品a在线观看图片 | 在线视频 中文字幕 | 国产精品揄拍一区二区久久国内亚洲精 | 欧美一级在线视频 | 精品在线观看一区二区 | 91在线资源 | 国产精品久久久久久久久久免费看 | 国产精品亚洲综合 | 日韩成人免费视频 | 97超碰在线免费 | 综合网视频 | 国外成人在线视频网站 | 欧美国产精品一区二区三区 | 久久av一区二区三区 | 欧美淫| 久草中文在线 | 日韩高清一区 | 欧美中文视频 | 99这里只有精品视频 | 亚洲精品一区在线 | 91精品国产乱码久久蜜臀 | 国产乱码精品一区二区三区忘忧草 | 91中文在线观看 |