- 相關推薦
程序員實習日記
一天將要結束了,相信你有很多感悟吧,是時候用心地寫一篇日記了。日記你想好怎么寫了嗎?以下是小編幫大家整理的程序員實習日記,歡迎大家分享。
實習日記1
我們在使用tooltip的時候,有以下幾個關鍵點:
1、創(chuàng)建CToolTipCtrl對象,Create函數(shù)實現(xiàn)。
2、使用AddTool函數(shù)向這個tooltip中加入tools,這也是綁定tool到某個控件的過程,從中我們可以知道在這個CToolTipCtrl對象中應該存在著不止一個tool,而是一系列的tool,通過函數(shù)DelTool實現(xiàn)刪除,AddTool實現(xiàn)添加,UpdateTipText實現(xiàn)更新tool的文本。
3、最關鍵的是我們需要一個觸發(fā)tooltip的關鍵點,這個關鍵點控制著何時顯示這個tooltip,一般情況下我們在PreTranslateMessage函數(shù)中進行處理,這也是我們攔截WM_MOUSEMOVE的地方,攔截之后,我們調(diào)用tooltip的RelayEvent向toolTip對象傳遞這個消息用以表示tooltip可以被顯示或者更新。
靜態(tài)鏈接MFC DLL模塊的時候,由于MFC總是使用它所練級額的DLL模塊狀態(tài),所以不存在模塊管理的問題。
調(diào)試DLL的時候,我們需要exe文件的配合,所以先要生成exe測試文件,然后將DLL工程設置成active,這時候會出現(xiàn)exe路徑提示對話框,我們將測試用的exe路徑填入就可以了。
實習日記2
CToolTipCtrl函類中的RelayEvent函數(shù)的存在理由,試想當我們的鼠標在一個窗體上滑動的時候,會發(fā)生什么情況,如果鼠標下方的窗體是一個子窗體,那么這個子窗體將會收到鼠標的消息,而主窗體的鼠標消息因此被屏蔽,windows是通過這種方式來處理消息的,這里CToolTipCtrl對象也需要受到消息來進行處理,但是這些鼠標消息卻不能流向CToolTipCtr對象,這就是問題的關鍵之所在,如何將消息導向CtoolTipCtrl就成了關鍵,一般我們會在PretranslateMessage函數(shù)中攔截消息之后使之導向CTOOLTipCtrl,這個導向所用的函數(shù)就是RelayEvent函數(shù)。
有關ToolTip控件的討論目前還存在疑惑,1當我們使用LPSTR_TEXTCALLBACK的時候,為什么ON_NOTIFY可以得倒響應消息,卻會在某個時間點出現(xiàn)Stack run over的錯誤。
實習日記3
ListCtrl中LVITEM lpara有很廣泛的用處,我們可以通過這個參數(shù)實現(xiàn)list控件的排序功能,這里需要注意的是使用LVITEM中的LPARAM,但是SetItemData函數(shù)似乎又是對LVITEM的lPara進行設置的,這里的關系似乎很微妙,但是我們一定要注意不能混淆。類中的成員函數(shù)可以單獨的聲明為模板函數(shù),但是模板函數(shù)的實現(xiàn)要放在頭文件中。GDI+中沒有提供繪制圓角方的函數(shù),我們需要通過GraphicPath類進行模擬來實現(xiàn)。
鼠標跟蹤消息的要點:響應消息WM_MOUSEMOVE WM_MOUSELEAVE WM_MOUSEHOVER在WM_MOUSEMOVE消息中處__TrackMouseEvent函數(shù)。
【程序員實習日記】相關文章:
程序員實習心得10-17
程序員實習報告02-14
程序員實習總結05-13
程序員的實習總結04-12
程序員實習總結05-10
程序員實習報告范文04-23
程序員實習個人總結05-11
程序員實習工作總結05-12
程序員實習工作總結04-26