日志
进程间通信--共享内存b
2019-08-08 15:53
#include "dialog.h"#include "ui_dialog.h"#include <QBuffer>#include <QDataStream>#include <QImage>#include <QPixmap>
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(){ sharemem_.lock(); if(!sharemem_.isAttached()) { sharemem_.attach(); } int size=sharemem_.size(); QByteArray bytearr; bytearr.resize(size); char * to=bytearr.data(); char * from=(char *)sharemem_.data(); memcpy(to,from,size); QDataStream stream(&bytearr,QIODevice::ReadOnly); QImage image; stream>>image; ui->label->setPixmap(QPixmap::fromImage(image).scaled(ui->label->width(),ui->label->height())); sharemem_.unlock(); sharemem_.detach();} |
下一篇: 无
上一篇: 进程间通信--共享内存a