学习c++和MFC一段时间了,苦于没有项目实战,所以自己写了一个简单的简单通讯录程序,以前用c#写简单很多,例程是这本书上的实例,我的第一个winform程序也是从这本书上学的,总结c#写的话更简单,直接拖控件,而且正则表达式库中也有,而用vc++的话还必须学习boost库中的 regex表达式,我在这个demo中没有进行处理了,只是简单的对对话框中的值进行判断处理是否为空,所以程序实现部分有些不足。但是整体功能都实现了。先把这本书介绍给大家,

一般的技术书籍都是介绍一些基本的语法,大家看过之后如果没具体的应用很快就忘记了,这本书从一些基本的模块入手到整个项目,适合刚刚入门的新手。首先声明界面是比较简单和粗糙的,其实重点不是界面,而是实现的过程。这个小demo巩固了我欠缺的一些数据库知识,也提高了我独立思考的能力。

         

在实现过程中遇到的问题:加载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 == ) // 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/

本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面

MFC制作简单通讯录程序的更多相关文章

  1. PYTHON定义函数制作简单登录程序(详细)

    环境:python3.* 结构:   dict_name = {} #定义一个字典,后面用到 def newuser(): #定义注册函数 prompt1='login desired:' while ...

  2. Java continue break 制作简单聊天室程序,屏蔽不文明语言,显示每句话聊天时间 for(;;) SimpleDateFormat("yyyy-MM-dd hh:mm:ss") equalsIgnoreCase

    package com.swift; import java.text.SimpleDateFormat; import java.util.Date; import java.util.Scanne ...

  3. ZAM 3D 制作简单的3D字幕 流程(二)

    原地址:http://www.cnblogs.com/yk250/p/5663907.html 文中表述仅为本人理解,若有偏差和错误请指正! 接着 ZAM 3D 制作简单的3D字幕 流程(一) .本篇 ...

  4. 制作Linux下程序安装包——使用脚本打包bin、run等安装包

    制作简单的安装包的时候可以简单的用cat命令连接两个文件,然后头部是脚本文件,执行的时候把下面的文件分解出来就行了.一般这个后部分的文件是个压缩 包,那样,就能够打包很多文件了,在脚本中解压出来即可. ...

  5. C# ASP.net 入门之简单通讯录

    简单通讯录功能虽然简单,却包括了制作一个网站的基本功能!各个模块可以作为新手入门的参考. 简单通讯录实现功能:1.登录 2.注册 3.后台管理 4.前台登录显示 5.创建联系人 6.密码修改 代码下载 ...

  6. 使用InstallAnywhere7.1制作Java exe程序安装包

    [转[使用InstallAnywhere7.1制作Java exe程序安装包 使用InstallAnywhere7.1制作Java exe程序安装包 对于已经完成的Java应用程序开发项目,从商业化角 ...

  7. 利用InstallShiled 10.5制作AE应用程序安装包

    [转]利用InstallShiled 10.5制作AE应用程序安装包 作者:3SNEWS 社区ESRI(ArcGIS)版版主:zhaoxiang_whuhttp://www.3snews.net/bb ...

  8. 制作Java安装程序

    这个工具利用 ANT 来制作在 Windows, MacOS X, Unix 平台上可执行的文件,比如 exe,zip,jar.ROXES ANT Tasks 基于 GPL 发布. http://ww ...

  9. C#制作自定义安装程序

    (一),安装程序 以前用vs制作过安装程序,现在把步骤写出来,有帮助的大家一定要顶哦 第一步:建立工程 1.打开vs,新建项目->其他项目类型->安装和部署(這個子项下面有安装项目和Web ...

随机推荐

  1. SpringMVC之三:配置Spring MVC Controller

    一.Controller配置方式 第一种 URL对应Bean如果要使用此类配置方式,需要在XML中做如下样式配置 以上配置,访问/hello.do就会寻找ID为/hello.do的Bean,此类方式仅 ...

  2. SSO跨域 CodeProject

    http://www.codeproject.com/Articles/114484/Single-Sign-On-SSO-for-cross-domain-ASP-NET-appl 翻译: http ...

  3. JavaScript高级程序设计学习笔记第十四章--表单

    1.在 HTML 中,表单是由<form>元素来表示的,而在 JavaScript 中,表单对应的则是 HTMLFormElement 类型. HTMLFormElement 继承了 HT ...

  4. mogilefs分布式文件存储

    MogileFS是一个开源的分布式文件存储系统,由LiveJournal旗下的Danga Interactive公司开发.Danga团队开发了包括 Memcached.MogileFS.Perlbal ...

  5. eclipse修改workspace

    Eclipse是一款很强的Java IDE,我们在开始的时候,往往设定了默认的workspace,当用久在之后,我们可能要去更改一下workspace的位置,但是在启动的时候已经不会显示更改了.下面有 ...

  6. js中push(),pop(),unshift(),shift()的用法

    js中push(),pop(),unshift(),shift()的用法小结   1.push().pop()和unshift().shift() 这两组同为对数组的操作,并且会改变数组的本身的长度及 ...

  7. 4.ctf实战题

    一道ctf实战题. 先亮出网址: http://fb2ad00f-0a28-4e38-8fff-849d7391e2d0.coding.io 打开连接,看到下面页面.Web题,首先就是扫描(御剑啊还有 ...

  8. SQL 分割字符串

    USE [AppCloud] GO /****** Object: UserDefinedFunction [dbo].[splitstr] Script Date: 12/19/2013 09:33 ...

  9. win form treeview添加节点

    //实例代码: /// <summary> /// 添加节点事件 /// </summary> /// <param name="tnodes"> ...

  10. es6 reduce的用法

    一.forEach回调函数参数,item(数组元素).index(序列).arr(数组本身)循环数组,无返回值,不改变原数组不支持return操作输出,return只用于控制循环是否跳出当前循环 二. ...