#include "dialog.h"
#include "ui_dialog.h"
#include <QFileDialog>
#include <QImage>
#include <QPixmap>
#include <QBuffer>
#include <QDataStream>
Dialog::Dialog(QWidget *parent) :
QDialog(parent),
ui(new Ui::Dialog)
{
ui->setupUi(this);
sharemem_.setKey("shareimg");
}
Dialog::~Dialog()
{
delete ui;
}
void Dialog::on_pushButton_clicked()
{
QString str=QFileDialog::getOpenFileName(this,"open image","D:\\","bmp (*.bmp)");
if(!str.isEmpty())
{
QImage img;
if(img.load(str))
{
ui->label->setPixmap(QPixmap::fromImage(img).scaled(ui->label->width(),ui->label->height()));
QBuffer buffer;
buffer.open(QBuffer::ReadWrite);
QDataStream stream(&buffer);
stream<<img;
int size=buffer.size();
if(sharemem_.isAttached())
{
sharemem_.detach();
}
if(sharemem_.create(size))
{
sharemem_.lock();
char * to=(char *)sharemem_.data();
const char * from=buffer.data().data();
memcpy(to,from,qMin(sharemem_.size(),size));
sharemem_.unlock();
}
}
}
}
Qt共享内存实现进程间通信(ShareMemory).zip
版权申诉
5星 · 超过95%的资源 93 浏览量
2021-03-29
17:29:10
上传
评论 1
收藏 9KB ZIP 举报
卷积神经网络
- 粉丝: 333
- 资源: 8460
最新资源
- AUTOSAR SPEC, HW TEST
- thingsBoard仪表板黑暗主题切换
- PS Tray Factory 3.31 最终 河谐版
- 鞋子(真实和 AI 生成的图像)数据集 JPG(2K+图像)
- C#的Winform通过GDI+以及Datatable绘制基于CSV文件的风羽图
- 3LP01C-D-VB一款P-Channel沟道SOT23的MOSFET晶体管参数介绍与应用说明
- 三菱PLC例程源码定型机超喂
- 3LN01C-TB-H-VB一款N-Channel沟道SOT23的MOSFET晶体管参数介绍与应用说明
- 13章Go微服务精讲:Go-Zero全流程实战即时通讯
- 3J14-VB一款P-Channel沟道SOT23的MOSFET晶体管参数介绍与应用说明
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈