在qt实现手机通讯录系统_Qt : 通讯录小demo(附全源码)

下面来看下程序的效果:

4339b1d10f190e7d48ea56e73d70ff0f.gif

该程序主要实现了以下几个功能:

1.对QListWidget子项的显示进行了修改,同时显示了姓名,电话,地址,头像等.

2.在QListWidget控件的不同位置点击右键菜单,产生不同的菜单提供给用户操作.

3.在添加用户的对话框中,对电话输入框进行了输入限制.

4.用户可以自己提供图片作为头像,窗口对外来图片的操作.

“c.h”的代码:

#ifndef C_H

#define C_H

#include

#include "ui_c.h"

#include

#include

#include

#include "MyItemDrawer.h"

#include

#include "PeopleMesDialog.h"

class c : public QWidget

{

Q_OBJECT

public:

c(QWidget *parent = 0);

~c();

QListWidgetItem* c::setItemValue(QString name, QString phone, QString address, QString pixmap);

void c::insertPeoMes(QString name, QString phone, QString address, QString pixmap);

void c::addPeoMes(QString name, QString phone, QString address, QString pixmap);

private slots:

void showContextMenuSlot(const QPoint&);

void addItemSlot();

void insertItemSlot();

void delItemSlot();

private:

Ui::cClass ui;

QListWidget *m_listWidget;

QMenu *m_menu;

QAction *m_addAction;

QAction *m_delAction;

QAction *m_insertAction;

PeopleMesDialog *m_dialog;

QListWidgetItem *m_selectedItem;

int m_insertIndex;

};

#endif // C_H

“c.cpp”的代码:

#include "c.h"

c::c(QWidget *parent)

: QWidget(parent)

{

ui.setupUi(this);

this->setWindowTitle(QString::fromLocal8Bit("通讯录"));

this->setFixedSize(300,600);

//初始化对象.

m_dialog = new PeopleMesDialog(this);

//初始化容器和布局.

m_listWidget = new QListWidget();

QHBoxLayout *layout = new QHBoxLayout(this);

layout->addWidget(m_listWidget);

addPeoMes("st", "15158047646", QString::fromLocal8Bit("杭州滨江xxx号"), "");

addPeoMes(QString::fromLocal8Bit("成龙"), "15158047647", QString::fromLocal8Bit("北京xxx号"), "");

addPeoMes(QString::fromLocal8Bit("刘德华"), "15158047648", QString::fromLocal8Bit("香港xxx号"), "");

addPeoMes(QString::fromLocal8Bit("古天乐"), "15158047649", QString::fromLocal8Bit("湖南滨江xxx号"), "");

addPeoMes(QString::fromLocal8Bit("张家辉"), "15158047650", QString::fromLocal8Bit("贪玩蓝月xxx号"), "");

m_listWidget->setItemDelegate(new MyItemDrawer(m_listWidget));

m_listWidget->setContextMenuPolicy(Qt::CustomContextMenu);

m_addAction = new QAction(QString::fromLocal8Bit("新增"), this);

m_delAction = new QAction(QString::fromLocal8Bit("删除"), th

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值