Qt paintEvent重绘事件

这篇具有很好参考价值的文章主要介绍了Qt paintEvent重绘事件。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

         paintEvent事件主要的应用场景一般是绘制一些Qt控件库中不存在的控件或者图形,然后再别的类中调用,下面画个矩形,以下是代码和效果图:

#ifndef WIDGET_H
#define WIDGET_H

#include <QWidget>

QT_BEGIN_NAMESPACE
namespace Ui { class Widget; }
QT_END_NAMESPACE

class Widget : public QWidget
{
    Q_OBJECT

public:
    Widget(QWidget *parent = nullptr);
    ~Widget();
protected:
    //控价的绘画事件
    virtual void paintEvent(QPaintEvent *event) override;

private:
    Ui::Widget *ui;
};
#endif // WIDGET_H

///
#include "widget.h"
#include "ui_widget.h"
#include <QPainter>
#include <QPen>
#include <QRect>
Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Widget)
{
    ui->setupUi(this);
}

Widget::~Widget()
{
    delete ui;
}

void Widget::paintEvent(QPaintEvent *event)
{
    Q_UNUSED(event);
    //控件的绘制工具,通过该工具我们可以进行常用的绘制
    QPainter painter(this);
    //绘制矩形边框,矩形边框为红色,宽度为5
    QPen pen;
    pen.setColor(Qt::red);
    pen.setWidth(5);
    painter.setPen(pen);
    painter.drawRect(QRect(10,10,200,200));
    //内部填充颜色
    painter.fillRect(QRect(15,15,190,190),Qt::green);

}


qt painter 重绘,qt,ui

 文章来源地址https://www.toymoban.com/news/detail-578041.html

到了这里,关于Qt paintEvent重绘事件的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Qt扫盲-Qt事件系统概述

    在Qt中,事件是由抽象的QEvent类派生而来的对象,表示发生在 应用程序内部 或应用程序需要知道的 外部 活动的结果。 事件可以由QObject子类的任何实例接收和处理,一般这个事件在窗口程序里面使用非常频繁。 那事件是如何传递并处理的呢? 当事件发生时,Qt会通过构造适

    2024年02月08日
    浏览(36)
  • QT--day4(定时器事件、鼠标事件、键盘事件、绘制事件、实现画板、QT实现TCP服务器)

     QT实现tcpf服务器代码:(源文件) 头文件:

    2024年02月15日
    浏览(50)
  • Qt 事件 < 二 >鼠标键盘事件

    Qt 是一个流行的 C++ 框架,用于构建跨平台的图形用户界面应用程序。在 Qt 中,处理键盘事件和鼠标事件是常见的任务,因为用户输入在交互式应用程序中至关重要。下面是关于 Qt 键盘事件和鼠标事件的学习总结: 键盘事件 (QKeyEvent)使用入门: 事件处理函数: 键盘事件通过

    2024年01月18日
    浏览(41)
  • QT学习日记12——Qt中的鼠标事件

    学习视频链接 最新QT从入门到实战完整版|传智教育_哔哩哔哩_bilibili https://www.bilibili.com/video/BV1g4411H78N?p=31vd_source=0471cde1c644648fafd07b54e303c905 目录 一、鼠标进入和出去事件 1.1 新建 C++ 文件 1.2 编写代码 1.3 操作 1.4 运行结果 二、鼠标点击、释放和移动事件 2.1 修改代码 2.2 运行结

    2024年02月11日
    浏览(53)
  • QT基础教程之七Qt消息机制和事件

    事件(event)是由系统或者 Qt 本身在不同的时刻发出的。当用户按下鼠标、敲下键盘,或者是窗口需要重新绘制的时候,都会发出一个相应的事件。一些事件在对用户操作做出响应时发出,如键盘事件等;另一些事件则是由系统自动发出,如计时器事件。 在前面我们也曾经简

    2024年02月10日
    浏览(34)
  • QT基础教程之八Qt消息机制和事件

    Qt 的绘图系统允许使用相同的 API 在屏幕和其它打印设备上进行绘制。整个绘图系统基于QPainter,QPainterDevice和QPaintEngine三个类。 QPainter 用来执行绘制的操作; QPaintDevice 是一个二维空间的抽象,这个二维空间允许QPainter在其上面进行绘制,也就是QPainter工作的空间; QPaintEngi

    2024年02月10日
    浏览(51)
  • 【Qt 底层之事件驱动系统】深入理解 Qt 事件机制:主事件循环与工作线程的交互探究,包括 QML 的视角

    在探讨 Qt 的世界时,我们不仅是在讨论一种编程框架,更是在探索一种将复杂技术细节隐藏于幕后、让开发者专注于创造性工作的艺术形式。正如著名的计算机科学家 Edsger Dijkstra 所言:“简洁是复杂性的先决条件。” 在这一章节中,我们将探讨 Qt 事件机制的基础概念,这

    2024年02月22日
    浏览(52)
  • QT基础篇(11)QT5事件处理及实例

    1.鼠标事件及实例 QT5中有多种鼠标事件可以使用,常用的鼠标事件有: mousePressEvent :当鼠标按下时触发的事件。 mouseReleaseEvent :当鼠标释放时触发的事件。 mouseDoubleClickEvent :当鼠标双击时触发的事件。 mouseMoveEvent :当鼠标移动时触发的事件。 wheelEvent :当鼠标滚轮滚动时

    2024年01月19日
    浏览(42)
  • Qt键盘事件处理——如何在Qt中监听按键操作

    Qt键盘事件处理——如何在Qt中监听按键操作 在Qt中,使用键盘是很常见的操作。如何通过代码来实现键盘事件的监听和响应呢?本文将详细介绍在Qt中如何监听键盘事件,并实现一些基本的按键操作。 在Qt中,所有的键盘事件都被封装成了一个QKeyEvent对象,我们只需要在需要

    2024年02月11日
    浏览(40)
  • Qt——Qt工作原理:事件驱动、信号与槽机制

    Qt作为一个现代的GUI(图形用户界面)框架,采用了事件驱动的编程范式,并引入了信号与槽机制,以实现高度交互和松耦合的程序设计。下面详细解释了相关概念,以及如何在Qt中使用它们。 事件是在GUI应用程序中的控件上产生的各种动作、操作或状态变化,例如鼠标移动

    2024年02月10日
    浏览(42)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包