使用vs2013和qt库编程实现图像显示。
工具/原料
vs2013
qt5.6
方法/步骤
1、使用vs2013新建一个QtApplication工程ImageView,如下图:
2、2. 在ImageView类里添加一个私有成员变量,代码如下:QImagem_img;
3、添加一个打开图像文件的菜单项,代码如下:ImageVie嘛术铹砾w::ImageView(QWidget*parent) :QMainWindow(禊诬娱飑parent){ ui.setupUi(this); QAction*myAc1=newQAction(this); myAc1->setText(QString::fromLocal8Bit("打开")); myAc1->setStatusTip("openimage"); connect(myAc1,SIGNAL(triggered()),this,SLOT(OpenImage())); QMenu*fileMenu=menuBar()->addMenu(QString::fromLocal8Bit("文件")); fileMenu->addAction(myAc1);}效果图如下:
4、添加槽函数OpenImage的响应代码:voidIma壹执慵驾geView::OpenImage(){QString惺绅寨瞀lstFile=QFileDialog::getOpenFileName(this,tr("OpenImage"),"",tr("JPG(*.jpg);;BMp(*.bmp)"));if(lstFile.isEmpty()){return;}m_img.load(lstFile);//加载文件repaint();//激发绘图函数}
5、添加图像绘制函数,具体如下:voidImageView::paintEvent(QPaintEvent*event){ QPainterpainter(this); if(!m_img.isNull()) painter.drawImage(0,0,m_img); QWidget::paintEvent(event);}
6、运行效果图如下: