相关动态
【QT项目】基于c++ qt的手机通讯录管理系统手机联系人「【QT项目】基于c++ qt的手机通讯录管理系统」
2025-01-26 11:12

emmmm,笔者的课程设计。

(1)在页面上可以显示的手机通讯录的联系人,并且可以显示联系人的所有信息。
(2)联系人分为在手机上的联系人和在手机卡上的联系人。
(3)可以实现联系人信息的增删改查,并以菜单的方式来操作。
(4)可以将联系人从两个空间之间进行转换,并且具有查重的功能。
(5)联系人的信息在底层需要保存在两个不同的文档中。

在这里插入图片描述

该部分将大致分析实现需求需要哪些的技术实现,大概的一个流程怎么走,大概需要哪些模块,UI框架怎么设计,怎么运行,需要大概多少接口,后期怎么维护等问题,为下一步详细设计打下铺垫。

首先需要先构思一个UI框架,在进入主页面的时候应该可以直接看到联系人的信息,这样的设计方式也是最为直观的方式;而对于通讯录分为了两块空间,可以采用两个页面来显示不同空间的信息;其次,为了实现其他的功能,可以通过添加一些按键上去来实现,而搜索功能,就直接使用搜索框就可以了,这样来说,对于对于“添加联系人”,“编辑联系人”两个功能,都需要两个跳转页面。因此,初步需要构建三个UI文件。

对于联系人的数据,该数据是以文本文件进行保存的,因此要想把数据呈现在ui界面上,就要使用文件操作读取数据中的文件,为了更好的区分每一个人的信息,可以使用”,”进行分割,使用” ”来分割不同的联系人之间的信息;再者,为了便于调试,可以用python中的faker库批量生成假数据,用于程序的调试,因此,简单的数据储存方式便构建出来了,如下图所示。
在这里插入图片描述

下图为用python的faker库生成假代码
在这里插入图片描述

首先需要先设计好各个页面的UI,仅仅具有视图的功能而没有实现功能。第一步先要设计主页面,在在页面上面显示联系人有两种基本方案:方案一:可以采用Qt中的QTableWidget控件进行构建,将联系人的信息放入一个QTableWidget中,对于手机和电话卡两个分区,可以将其分为两个QTableWidget控件进行构建,使用QStackWidget控件来在页面上选择查看手机联系人还是选择查看电话卡联系人;方案二:首先还是采用QStackWidget控件来将手机联系人和电话卡联系人分为两个部分来查看,对于每一个部分单独进行信息控制。最终本人选择了使用方案一进行开发,原因是这种方式开发更加合理,下图为根据方案一设计出来的UI主页面框架。

在QTableWidget控件中会读取所有的联系人信息,显示在上面,如果点击了添加联系人的按钮,就会跳转到另外一个界面,用户把新的联系人的数据输入,通过确认键来完成联系人的创建,并在主页面的QTableWidget控件上显示出来。
在这里插入图片描述
在这里插入图片描述
在QTableWidget中选中了一个联系人,再点击删除联系人按钮,就会询问用户是否删除联系人,如果点击确认则在通过文件读写的方法删除掉联系人,最后刷新QTableWidget控件,在QTableWidget控件上就没有了这一位已经被删除的联系人了。
在QTableWidget中选中了一个联系人,再点击编辑联系人按钮,就会跳出一个新的页面来给用户修改联系人的信息,通过点击确认来完成修改。
在这里插入图片描述
然后需要把信息显示在主页面上,我使用了flushPage函数进行刷新,如下图。
在这里插入图片描述
其次,我使用了PersonController控制器来操作底层文件,上层函数通过控制底层函数从而达到读写文件数据的目的,该类的所有函数都采用静态类的方式,可以直接采用类名调用。
在这里插入图片描述
然后实现添加联系人功能,让该按键与addPerson函数进行绑定,在addPerson中完成该功能,在addPerson函数中,需要先跳转到addWidget窗口,即调用addWidget =new AddWidget(ui->stackedWidget->currentIndex());,addWidget->show();来跳转,跳转到addWidget页面之后,只用addWidget中addPerson()函数进行操作,先将用户输入的所有信息放入一个集合中,然后再写入文本中,最后,关闭页面,然后刷新tableWidget控件刷新联系人。

接着实现删除联系人功能,首先是按键绑定,绑定了之后,调用deletePerson函数,询问你是否确认删除选中的联系人,如果确认删除,则通过文件操作来将该联系人删除,重新写入没有该联系人的文本文件。简单来说,该函数用于删除联系人, 在删除之前,需要先启动删除联系人的触发机制删除联系人,如果没有选中某一项,请先选中某一项再进行操作,删除联系人的时候首先先检测在两个空间中有没有相同的人,如果存在相同的人名,则在两个空间都对其进行删除操作。
在这里插入图片描述
然后需要实现编辑联系人的函数,首先是信号绑定,在绑定之后实现该函数的功能,该函数用于修改联系人,输入修改的信息后进行修改,如果在另外一个空间也存在该联系人(判定方式:两个联系人姓名和电话都相等)。按键按了之后实现页面跳转,跳转之后用户填写好需要修改的信息之后点击确认,就会将该联系人原来位置的信息进行修改,然后重新写入。

然后是联系人搜索功能,在输入框输入文字的时候就会进行搜索,搜索到人之后就会在QTableWidget空间上面显示出来。

在这里插入图片描述
最后实现联系人转移的函数,点击了之后询问用户是否确认要转移,用户点击了确认之后开始进入判定程序,程序需要判断在另外一个储存空间是否存在相同的联系人,判断是否存在相同联系人且容量是否超过上限。
在这里插入图片描述

最后具体的功能实现部分就不介绍了,然后UI设计的时候加点png上去就结束了,比较简单。

 
 

上图
(1)主页面
在这里插入图片描述
(2)点击电话卡联系人
在这里插入图片描述

(3)添加联系人
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
(4)删除联系人
在这里插入图片描述
在这里插入图片描述
(5)编辑联系人
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
(6)转移联系人
在这里插入图片描述
在这里插入图片描述
(7)搜索联系人
在这里插入图片描述
在这里插入图片描述

如果想要相关报告可以私聊我。

项目已开源:https://gitee.com/zeeland/Mobile-phone-address-book-relation-system
开发不易,求star!

    以上就是本篇文章【【QT项目】基于c++ qt的手机通讯录管理系统手机联系人「【QT项目】基于c++ qt的手机通讯录管理系统」】的全部内容了,欢迎阅览 ! 文章地址:http://sjzytwl.xhstdz.com/news/14352.html 
     栏目首页      相关文章      动态      同类文章      热门文章      网站地图      返回首页 物流园资讯移动站 http://sjzytwl.xhstdz.com/mobile/ , 查看更多   
最新文章
苹果手机闹钟声音小怎么办苹果手机闹钟声音怎么设置「苹果手机闹钟声音小怎么办」
《白杨礼赞》是现代作家茅盾于1941年所写的一篇散文。作者以西北黄土高原上“参天耸立,不折不挠,对抗着西北风”的白杨树,来象
正在阅读:再掀GPS生活导航浪潮,UKING语音王K50接踵而来再掀GPS生活导航浪潮,UKING语音王K50接踵而来uking手机「正在阅读:再掀GPS生活导航浪潮,UKING语音王K50接踵而来再
  UKING语音王A90的GPS生活导航概念甫一推出,便受到广泛关注。乘着A90的热卖风暴,又一部GPS生活导航强机UKING语音王K50接踵
苹果怎么连接别人的热点两个手机如何连接热点「苹果怎么连接别人的热点」
在日常生活和工作中,我们时常需要连接他人的手机热点来共享网络。对于使用苹果设备的用户来说,连接别人的热点其实是一个简单且
索尼相机怎么连接手机索尼相机如何连接手机「索尼相机怎么连接手机」
在数字化时代,手机与相机的结合为我们带来了更多拍摄与分享的可能性。索尼相机作为业界知名品牌,其连接手机的功能也备受用户关
原创手机什么时候充电好?原来都做错了,正确充电可延长手机寿命手机什么时候充电最好「原创手机什么时候充电好?原来都做错了,正确充电可延长手机寿命」
手机怎样充电才正确,是剩余20%充呢,还是手机提示电量不足,亮起红灯再充?又或者是随充随拔好呢?相信很多朋友啊,都非常重视
vivo手机键盘设置步骤详解及个性化功能介绍手机键盘怎么设置「vivo手机键盘设置步骤详解及个性化功能介绍」
vivo手机键盘设置步骤详解大家好,今天我来给大家介绍一下vivo手机的键盘设置方法。无论是新入手vivo手机的用户,还是老用户想要
CSGO全球攻势手机版(CSGOMobile)反恐精英CS手机版「CSGO全球攻势手机版(CSGOMobile)」
CSGO全球攻势手机版里玩家需要拿起武器去战斗,这是一款团队竞技游戏,需要玩家间配合战斗,最终取得游戏胜利。游戏中有丰富的枪
手机营销活动策划方案(4篇)手机营销「手机营销活动策划方案(4篇)」
确定目标是置顶工作方案的重要环节。在公司计划开展某项工作的时候,我们需要为领导提供多种工作方案。大家想知道怎么样才能写一
vivo化身“价格屠夫”,12G+512G跌到1536元,6000mAh+80W+1.5K屏手机vivo「vivo化身“价格屠夫”,12G+512G跌到1536元,6000mAh+80W+1.5K屏」
vivo连续四年蝉联国内手机市场销量第一,销量稳定增长的同时,vivo还加大了对千元机的投入,新技术会优先给千元机使用,就连千元
海信爱家遥控器海信电视遥控器手机版「海信爱家遥控器」
海信爱家遥控器这是一款非常实用的遥控器软件。有精选电商和智能设备资讯,提供智慧生活解决方案。智能场景组合、发现美食智能食
相关文章