广告
返回顶部
首页 > 资讯 > 后端开发 > 其他教程 >Qt实现图形裁减
  • 222
分享到

Qt实现图形裁减

2024-04-02 19:04:59 222人浏览 独家记忆
摘要

本文实例为大家分享了Qt实现图形裁减的具体代码,供大家参考,具体内容如下 main.cpp #include <QApplication> #include <QG

本文实例为大家分享了Qt实现图形裁减的具体代码,供大家参考,具体内容如下

main.cpp

#include <QApplication>
#include <QGraphicsItemGroup>
#include <QGraphicsView>
#include <QPushButton>
#include <QVBoxLayout>

class GraphicsItemGroup : public QGraphicsItemGroup
{
public:
    GraphicsItemGroup(QGraphicsItem *parent = 0) : QGraphicsItemGroup(parent)
    {
        setFlag(QGraphicsItem::ItemClipsChildrenToShape, true);
    }
    QPainterPath shape() const
    {
        if (mShape.isEmpty())
            return QGraphicsItemGroup::shape();
        return mShape;
    }
    void setShape(const QPainterPath &shape)
    {
        mShape = shape;
        update();
    }

private:
    QPainterPath mShape;
};

int main(int arGC, char *argv[])
{
    QApplication a(argc, argv);
    QWidget w;
    w.setLayout(new QVBoxLayout);

    QGraphicsView view;
    QPushButton button("click me");

    w.layout()->addWidget(&view);
    w.layout()->addWidget(&button);

    view.setScene(new QGraphiCSScene);
    GraphicsItemGroup group;
    view.scene()->addItem(&group);
    auto ellipse = new QGraphicsEllipseItem(QRectF(0, 0, 100, 100));
    ellipse->setBrush(Qt::red);
    auto rect = new QGraphicsRectItem(QRect(150, 150, 100, 100));
    rect->setBrush(Qt::blue);
    group.addToGroup(ellipse);
    group.addToGroup(rect);

    QObject::connect(&button, &QPushButton::clicked, [&group]()
    {
        QPainterPath shape;
        if (group.shape().boundingRect() == group.boundingRect())
        {
            shape.addRect(0, 50, 250, 150);
        }
        group.setShape(shape);
    });

    w.show();
    return a.exec();
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程网。

--结束END--

本文标题: Qt实现图形裁减

本文链接: https://www.lsjlt.com/news/151459.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Qt实现图形裁减
    本文实例为大家分享了Qt实现图形裁减的具体代码,供大家参考,具体内容如下 main.cpp #include <QApplication> #include <QG...
    99+
    2022-11-13
  • Qt如何实现图形裁减
    本文小编为大家详细介绍“Qt如何实现图形裁减”,内容详细,步骤清晰,细节处理妥当,希望这篇“Qt如何实现图形裁减”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。main.cpp#include <Q...
    99+
    2023-07-02
  • Qt实现实时鼠标绘制图形
    目录功能实现1:记录图形第一个绘制点2:实时获取鼠标最新位置并绘图3:释放绘制点,绘制最终图形总结上一章节介绍了关于QGraphicsView的基础讲解,以及简单的类图创建,由上一章...
    99+
    2022-11-13
  • QT+OpenGL实现简单图形的绘制
    继承于QOpenGLWindow,描画出来。新建类myopengl,头文件如下: #ifndef MYOPENGL_H #define MYOPENGL_H #include &...
    99+
    2022-12-28
    QT OpenGL绘制图形 QT 绘制图形 OpenGL绘制图形 QT OpenGL
  • QT圆形图像剪切功能实现
    剪切代码: Rectangle{ id:idRectRound width: 250 ...
    99+
    2022-11-13
    qt图像剪切 qt圆形剪切
  • Qt如何实现实时鼠标绘制图形
    小编给大家分享一下Qt如何实现实时鼠标绘制图形,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!展示效果功能实现想要实现鼠标拖拽绘图的效果,离不开鼠标的三大事件:按下、移动、释放那么具体实现实时绘制矩形框的核心流程是什么呢?鼠...
    99+
    2023-06-29
  • Qt利用QChart实现实时波形图的绘制
    目录前言1.QChart配置以及使用1.1QChart环境配置1.2控件使用1.3代码配置2.QChat设置动态折线图2.1基础数据设置2.2定时器控制数据变动3.实际硬件数据采集图...
    99+
    2022-11-13
  • Android裁剪图片为圆形图片的实现原理与代码
    以前在eoe论坛中找过裁剪图片为圆形图片的方法,但是效果都不是很理想,这几天因为公司业务的要求,需要对头像进行裁剪以圆形的方式显示,这个方法是根据传入的图片的高度(height...
    99+
    2022-06-06
    图片 Android
  • Qt中PaintEvent绘制实时波形图的实现示例
    目录绘制思路1:接收硬件传入的数据2:定时器动态刷新页面3:真实数据处理第一步:每进行一次数据更新,都需要剔除超时显示数据。第二步:筛查有效数据,并记录4:图形绘制上一篇文章讲述了如...
    99+
    2022-11-13
  • android实现简单的矩形裁剪框
    本文实例为大家分享了android实现矩形裁剪框的具体代码,供大家参考,具体内容如下 前阵子做视频编辑功能,视频裁剪功能不太好用,就简单的修改了一下 正常模式是这样的 简单的添加了...
    99+
    2022-11-13
  • vue-cropper实现裁剪图片
    本文实例为大家分享了vue-cropper实现裁剪图片的具体代码,供大家参考,具体内容如下 先展示一下效果 如何使用: 1、安装  npm install vue-cro...
    99+
    2022-11-13
  • Qt QTreeWidget树形结构怎么实现
    本篇内容介绍了“Qt QTreeWidget树形结构怎么实现”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!Qt中实现树形结构可以使...
    99+
    2023-06-21
  • cropperjs实现裁剪图片功能
    本文实例为大家分享了cropperjs实现裁剪图片功能的具体代码,供大家参考,具体内容如下 cropperjs (裁剪图片) vue版本 // 下载 // npm install c...
    99+
    2022-11-13
  • Vue实现裁切图片功能
    本文实例为大家分享了Vue实现裁切图片的具体代码,供大家参考,具体内容如下 项目需求做一个身份证的裁切功能 原生开发的话,这种功能挺容易实现的 Web的没有做过相关功能,百度了一下...
    99+
    2022-11-13
  • Qt中怎么使用PaintEvent绘制实时波形图
    本文小编为大家详细介绍“Qt中怎么使用PaintEvent绘制实时波形图”,内容详细,步骤清晰,细节处理妥当,希望这篇“Qt中怎么使用PaintEvent绘制实时波形图”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧...
    99+
    2023-06-30
  • android怎么实现简单的矩形裁剪框
    这篇文章主要介绍“android怎么实现简单的矩形裁剪框”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“android怎么实现简单的矩形裁剪框”文章能帮助大家解决问题。正常模式是这样的简单的添加了等比...
    99+
    2023-06-30
  • vue-cropper怎么实现裁剪图片
    这篇文章主要讲解了“vue-cropper怎么实现裁剪图片”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“vue-cropper怎么实现裁剪图片”吧!先展示一下效果如何使用:1、安装 ...
    99+
    2023-06-30
  • Qt绘制图表的实现
    1 简介 使用Qt的charts模块来绘制图表,案例来自Qt自带的demo。 charts模块简介:Qt Chars模块提供了一系列容易使用的图表组件。需要使用charts组件时,需...
    99+
    2022-11-12
  • 小程序实现图片裁剪上传
    本文实例为大家分享了小程序实现图片裁剪上传的具体代码,供大家参考,具体内容如下 <!--图片展示 --> <view bindtap='upEwm' data-wh...
    99+
    2022-11-13
  • Vue怎么实现裁切图片功能
    今天小编给大家分享一下Vue怎么实现裁切图片功能的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。效果:1)、安装 vue-cr...
    99+
    2023-06-30
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作