Qt5 svg图片显示及QScrollArea滚动条显示区域的使用
程序
.pro添加库QT+= svg
显示svg图片
.h
#ifndef SVGWIDGET_H
#define SVGWIDGET_H
#include <QtSvg>
#include <QSvgWidget>
#include <QSvgRenderer>
class SvgWidget : public QSvgWidget
{
Q_OBJECT
public:
SvgWidget(QWidget *parent=0);
void wheelEvent(QWheelEvent*);//鼠标滚动事件
private:
QSvgRenderer *render;//用于图片显示尺寸的确定
};
#endif // SVGWIDGET_H
.cpp
#include "svgwidget.h"
SvgWidget::SvgWidget(QWidget *parent):QSvgWidget(parent)
{
render=renderer();
}
void SvgWidget::wheelEvent(QWheelEvent *e)//通过滚轴控制图片大小
{
const double diff=0.1;
QSize size=render->defaultSize();
int width=size.width();
int height=size.height();
if(e->delta()>0)
{
width=int(this->width()+this-