• 大小: 30.04MB
    文件类型: .zip
    金币: 2
    下载: 0 次
    发布日期: 2024-01-29
  • 语言: 其他
  • 标签:

资源简介

一个有着通讯类功能的demo,具体效果可以在博客观看,在确定是否进行下载:http://mp.blog.csdn.net/mdeditor/index/79119867

资源截图

代码片段和文件信息

#include “c.h“

c::c(QWidget *parent)
: QWidget(parent)
{
ui.setupUi(this);

this->setWindowtitle(QString::fromLocal8Bit(“通讯录“));
this->setFixedSize(300600);

//初始化对象.
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(“删除“) this);
m_insertAction = new QAction(QString::fromLocal8Bit(“插入“) this);

connect(m_listWidget SIGNAL(customContextMenuRequested(const QPoint&)) this SLOT(showContextMenuSlot(const QPoint&)));
connect(m_addAction SIGNAL(triggered()) this SLOT(addItemSlot()));
connect(m_insertAction SIGNAL(triggered()) this SLOT(insertItemSlot()));
connect(m_delAction SIGNAL(triggered()) this SLOT(delItemSlot()));
}

c::~c()
{
delete m_listWidget;
}
void c::showContextMenuSlot(const QPoint& pos)
{
m_menu = new QMenu;

//如果鼠标在项上.
if (m_listWidget->itemAt(pos))
{
//记录.
m_selectedItem = m_listWidget->itemAt(pos);
m_insertIndex = m_listWidget->row(m_selectedItem);

m_menu->addAction(m_insertAction);
m_menu->addAction(m_delAction);
}
else
{
m_menu->addAction(m_addAction);
}
m_menu->exec(QCursor::pos());
}
void c::addItemSlot()
{
int status = m_dialog->exec();
//如果用户选择的是保存.
if (status == QDialog::Accepted)
{
QString name = m_dialog->getName();
QString phone = m_dialog->getPhone();
QString address = m_dialog->getAddress();
QString image = m_dialog->getImage();
auto item = setItemValue(name phone address image);
m_listWidget->addItem(item);
}
//进行清空处理.
m_dialog->clear();
}
void c::insertItemSlot()
{
int status = m_dialog->exec();

//如果用户选择的是保存.
if (status == QDialog::Accepted)
{
QString name = m_dialog->getName();
QString phone = m_dialog->getPhone();
QString address = m_dialog->getAddress();
QString image = m_dialog->getImage();
auto item = setItemValue(name phone address image);
m_listWidget->insertItem(m_insertIndex - 1 item);
}
//进行清空处理.
m_dialog->clear();
}
void c::delItemSlot()
{
//删除选中项.
int index = m_listWidget->row(m_selectedItem);
QListWidgetItem *tempItem = m_listWidget->takeItem(index);
delete tempItem;
m_selectedItem = NULL;
}
QListWidgetIte

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2018-01-21 13:47  18.1.21通讯录demo\
     目录           0  2018-01-21 13:38  18.1.21通讯录demo\18.1.21\
     文件    24772608  2018-01-21 13:47  18.1.21通讯录demo\18.1.21.sdf
     文件         967  2018-01-20 10:28  18.1.21通讯录demo\18.1.21.sln
     文件       28160  2018-01-21 13:47  18.1.21通讯录demo\18.1.21.v12.suo
     文件       16086  2018-01-20 13:55  18.1.21通讯录demo\18.1.21\18.1.21.vcxproj
     文件        3803  2018-01-20 13:55  18.1.21通讯录demo\18.1.21\18.1.21.vcxproj.filters
     文件         657  2018-01-21 13:32  18.1.21通讯录demo\18.1.21\18.1.21.vcxproj.user
     文件        3795  2018-01-21 13:34  18.1.21通讯录demo\18.1.21\c.cpp
     文件         968  2018-01-21 11:08  18.1.21通讯录demo\18.1.21\c.h
     文件          61  2018-01-20 10:28  18.1.21通讯录demo\18.1.21\c.qrc
     文件         559  2018-01-20 10:28  18.1.21通讯录demo\18.1.21\c.ui
     目录           0  2018-01-21 13:38  18.1.21通讯录demo\18.1.21\Debug\
     文件        3084  2018-01-21 13:38  18.1.21通讯录demo\18.1.21\Debug\18.1.21.log
     目录           0  2018-01-21 13:38  18.1.21通讯录demo\18.1.21\Debug\18.1.21.tlog\
     文件         172  2018-01-21 13:38  18.1.21通讯录demo\18.1.21\Debug\18.1.21.tlog\18.1.21.lastbuildstate
     文件        9422  2018-01-21 13:38  18.1.21通讯录demo\18.1.21\Debug\18.1.21.tlog\cl.command.1.tlog
     文件      208454  2018-01-21 13:38  18.1.21通讯录demo\18.1.21\Debug\18.1.21.tlog\CL.read.1.tlog
     文件       14376  2018-01-21 13:38  18.1.21通讯录demo\18.1.21\Debug\18.1.21.tlog\CL.write.1.tlog
     文件        4338  2018-01-21 13:25  18.1.21通讯录demo\18.1.21\Debug\18.1.21.tlog\custombuild.command.1.tlog
     文件        1114  2018-01-21 13:25  18.1.21通讯录demo\18.1.21\Debug\18.1.21.tlog\custombuild.read.1.tlog
     文件        1702  2018-01-21 13:25  18.1.21通讯录demo\18.1.21\Debug\18.1.21.tlog\custombuild.write.1.tlog
     文件        2628  2018-01-21 13:38  18.1.21通讯录demo\18.1.21\Debug\18.1.21.tlog\link.command.1.tlog
     文件        4860  2018-01-21 13:38  18.1.21通讯录demo\18.1.21\Debug\18.1.21.tlog\link.read.1.tlog
     文件        1472  2018-01-21 13:38  18.1.21通讯录demo\18.1.21\Debug\18.1.21.tlog\link.write.1.tlog
     文件      512125  2018-01-21 13:34  18.1.21通讯录demo\18.1.21\Debug\c.obj
     文件      437417  2018-01-21 13:25  18.1.21通讯录demo\18.1.21\Debug\main.obj
     文件      441527  2018-01-21 13:25  18.1.21通讯录demo\18.1.21\Debug\moc_c.obj
     文件      176760  2018-01-21 11:51  18.1.21通讯录demo\18.1.21\Debug\moc_MyItemDrawer.obj
     文件      423378  2018-01-21 13:25  18.1.21通讯录demo\18.1.21\Debug\moc_PeopleMesDialog.obj
     文件      200202  2018-01-21 12:55  18.1.21通讯录demo\18.1.21\Debug\MyItemDrawer.obj
............此处省略68个文件信息

评论

共有 条评论

相关资源