2020/9/25 C++Qt QPainter类的使用及介绍

一、QPainter类的使用及介绍

1.头文件

#include<Qpainter>//该类可以将图片放到某个指定位置的控件上 如Qwidget Qdialog 等

//图片类文件
#include<QPixmap>//QPixmap继承了QPaintDevice,指令主要功能是针对屏幕优化的图片,如背景图
#include<QBitmap>//QBitmap继承自QPixmap 
#include<QImage>//提供像素级别的操作
//以上QPixmap QBittemp QImage 均可提供图让Qpainter加载到指定控件的指定位置,也可以设置大小
//不知道是否有其他用途,暂定这个用途= =咱懂得不多

2.定义

public:
	void paintEvent(QPaintEvent*);//因为这里是QT自带的消息循环,不需要类,只需要函数定义就会自动在QT程序的后台启动
//注意,因为是系统自带的函数,所以不能修改,千万别改它,改它就用不了了= =注意啊
//类似的定义还有如 virtual void keyPressEvent(QKeyEvent *ev);键盘按下
//                virtual void keyRealseEvent(QKeyEvent *ev); 键盘松开

3.创建和使用

void QtGuiApplication::paintEvent(QPaintEvent*)//绘图消息
{
    //因为这里是QT自带的消息循环,所以只要在QT类中定义了,原则上只要定义出来就可以直接使用了。
    
    //创建画家,指定绘图设备
    QPainter painter(this);//绘图加载到当前窗口

    //创建QPixmap(像素图)对象
    QPixmap pix;
    QPixmap pix2;
    QPixmap pix3;

            //加载图片的像素图
            pix.load(":/Image/8.jpg");
            
            //绘制背景图自适应扩大
            painter.drawPixmap(0, 0,this->width(), this->height(), pix);

            //加载图片的像素图
            pix2.load(":/Image/9.jpg");

            //绘制背景图自适应扩大
            painter.drawTiledPixmap(0, 0,this->width(), this->height(), pix2);

            //加载图片的像素图
            pix3.load(":/Image/10.jpg");

            //绘制背景图自适应扩大
            painter.drawTiledPixmap(0, 0, this->width(), this->height(), pix3);

//如果当前的窗口有延迟,导致显示出现一些问题,可以使用窗口事件刷新函数,该函数会立刻刷新QPaintEvent事件
//void QWidget::repaint()
//使用时只需要repaint();即可
}

 

 

 

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值