MFC制作簡單通訊錄程序


       學習c++和MFC一段時間了,苦於沒有項目實戰,所以自己寫了一個簡單的簡單通訊錄程序,以前用c#寫簡單很多,例程是這本書上的實例,我的第一個winform程序也是從這本書上學的,總結c#寫的話更簡單,直接拖控件,而且正則表達式庫中也有,而用vc++的話還必須學習boost庫中的 regex表達式,我在這個demo中沒有進行處理了,只是簡單的對對話框中的值進行判斷處理是否為空,所以程序實現部分有些不足。但是整體功能都實現了。先把這本書介紹給大家,

 QQ截圖20140606223302

       一般的技術書籍都是介紹一些基本的語法,大家看過之后如果沒具體的應用很快就忘記了,這本書從一些基本的模塊入手到整個項目,適合剛剛入門的新手。首先聲明界面是比較簡單和粗糙的,其實重點不是界面,而是實現的過程。這個小demo鞏固了我欠缺的一些數據庫知識,也提高了我獨立思考的能力。

 QQ截圖20140607165141          QQ截圖20140607165214

      在實現過程中遇到的問題:加載ClistCtrl無法顯示,后面查資料才知道沒有設置它的view屬性,應該設為report,其次,我不需要顯示clistctrl控件的第一列的值,這個問題一直困擾了我很久,后面在csdn找到了答案,即重載clistctrl類,HDN_BEGINTRACK(A/W)事件不做任何處理。達到隱藏的效果。代碼如下:

BOOL CMyListCtrl::OnNotify(WPARAM wParam, LPARAM lParam, LRESULT* pResult) 
{
    HD_NOTIFY   *pHDN = (HD_NOTIFY*)lParam;

    if((pHDN->hdr.code == HDN_BEGINTRACKW || pHDN->hdr.code == HDN_BEGINTRACKA)
        && pHDN->iItem == 0)            // Prevent only first (col# 0) from resizing
    {
        *pResult = TRUE;                // disable tracking
        return TRUE;                    // Processed message
    }

    return CListCtrl::OnNotify(wParam, lParam, pResult);
}

        我已經把全部代碼上傳到github上,https://github.com/caoqiwen2001/AddListDemo如果你也在學習mfc和c++的話,可以拿來參考參考,由於沒用到正則表達式,里面對信息的校正可能會出現bug,既然是練手的小程序,你也可以對它進行完善。 接下來我的任務是打算寫一個簡單的網絡聊天程序學習計算機網絡通信方面的知識,如果你也熱愛技術,歡迎與我交流,我的郵箱是caoqiwen2001@126.com

參考資料:http://blog.chinaunix.net/uid-21222282-id-1829268.html

                 http://blog.csdn.net/bwmwm/article/details/1754270

                 http://bbs.csdn.net/topics/120111746

                 http://blog.chinaunix.net/uid-25958655-id-4017198.html

 

作者:曹麒文

出處:http://www.cnblogs.com/master-image/

本文版權歸作者和博客園共有,歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM