Qt地址簿Part2(Qt Creator的官方入门教程).pdf

Qt地址簿Part2(Qt Creator的官方入门教程).pdf

ID:52956988

大小:368.64 KB

页数:5页

时间:2020-04-03

Qt地址簿Part2(Qt Creator的官方入门教程).pdf_第1页
Qt地址簿Part2(Qt Creator的官方入门教程).pdf_第2页
Qt地址簿Part2(Qt Creator的官方入门教程).pdf_第3页
Qt地址簿Part2(Qt Creator的官方入门教程).pdf_第4页
Qt地址簿Part2(Qt Creator的官方入门教程).pdf_第5页
资源描述:

《Qt地址簿Part2(Qt Creator的官方入门教程).pdf》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、加强版中文QtCreator地址簿地址簿2–添加地址下一步我们建立一个能够进行一点交互操作的基本地址簿应用程序。我们提供一个用户可以用来点击添加联系人的按钮。当然,也需要一些能够有组织的保存联系人的数据结构。在框架上放置窗口控件我们在上一章的基础上继续添加功,我们已经有标签和输入框了,只需要添加一个按钮来处理添加联系人。因此要破坏已经布好的布局:先用鼠标框选所有窗口控件,或者按Ctrl+A来选择所有窗口控件,鼠标放在布局好的窗口控件上,点右键,选择BreakLayout。然后我们就可以添加3个按钮了。双击按钮控件,然后把控件上的文字分别修改为:添加,提交,取消。接下来我们设置objectN

2、ame,依次对应为addButton,submitButton,cancelButton。我们需要一个垂直间隔器来保证按钮排列整齐,从控件工具箱里拖拽出来一个。下图就是间隔器,可以产生一个间隔,使控件可以更紧凑。然后,对这三个按钮和垂直间隔进行垂直方向布局,选择这三个按钮(可以按住Ctrl,点击鼠标选择),然后点击右键,选择LayoutVertically。也可以使用Ctr+L的快捷方式来布局。我们使用间隔器不仅是使按钮之间间距均匀,还为了使按钮靠近窗口的顶部。下图显示了使用和不使用间隔器的差别(地址和姓名也可以进行相同的操作,Ctrl+Alt+R预览编辑后的窗口):选择框架里的所有控件(

3、用Ctrl+A),然后点击右键选择LayoutinaGrid,在框架窗口的空白处点右键,选择LayoutHorizontally或LayoutVertically。最终的界面显示如下图:1加强版中文QtCreator地址簿AddressBook类为了能够使地址簿对用户操作作出回应,我们需要为我们之前添加的每个按钮写一个槽。一个槽就是对某一信号作出回应的一个函数。我们以后会更进一步具体讨论这个概念的。我们先参考SignalsandSlots文档来大概了解一下Qt的信号和槽的概念。在addressbook.h文件内,我们在AddressBook类初始化列表里添加如下代码,自己动手抄写,而不是复

4、制,抄写的时候你才能知道Qt自带的编辑器用起来的感觉怎么样:publicslots:voidaddContact();voidsubmitContact();voidcancel();AddressBook类是QWidget的子类,QtCreator在头文件中包含QWidget。#include#include#include我们需要用一个容器来储存地址簿联系人,这样才能遍历和显示联系人。QMap的对象contacts就可实现这一功能,因为其带有一个键-值对:联系人姓名作为键,而联系人地址作为值。在私有变量里添加如下代码:QMap

5、String,QString>contacts;QStringoldName;QStringoldAddress;我们也声明两个QString对象,oldName和oldAddress。这些对象用来保留在用户点击添加时最后显示的联系人姓名和地址。这样,当用户点击取消时,我们就可以返回至上一个联系人的详细信息。这有点难以理解,它既不是我们构造的函数也不是一个槽。接下来,我们来实现我们定义的槽。在AddressBook的构造函数内,我们设置nameLine和andaddressText的文本为只读模式。这样就只是显示而不能编辑现有的联系人的具体情况了。注意,为了防止发生冲突,我们要把自动生成的

6、setupUi()放在构造函数的第一行。在AddressBook类的实现(addressbook.cpp)中添加以下代码:ui->nameLine->setReadOnly(true);ui->addressText->setReadOnly(true);ui->submitButton->hide();ui->cancelButton->hide();2加强版中文QtCreator地址簿只有当点击添加时才会显示隐藏的submitButton(提交)和cancelButton(取消),这个是通过我们下文中讨论的addContact()函数来处理的。connect(ui->addButton

7、,SIGNAL(clicked()),this,SLOT(addContact()));connect(ui->submitButton,SIGNAL(clicked()),this,SLOT(submitContact()));connect(ui->cancelButton,SIGNAL(clicked()),this,SLOT(cancel()));我们连接按钮的clicked()信号和它们对应的槽。下图说明这一情

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。