当前位置: 首页 > news >正文

qt QGraphicsTextItem详解

QGraphicsTextItem类是Qt图形视图框架中的一个重要类,它继承自QGraphicsObject,并提供了在图形场景中显示和编辑文本的功能。

一、基本功能

QGraphicsTextItem类主要用于在QGraphicsScene中显示格式化的文本。它支持纯文本和HTML格式的文本,并允许用户通过调用相关函数来设置文本的样式、布局和交互方式。

二、成员函数

  1. 构造函数:QGraphicsTextItem(const QString &text=QString(), QGraphicsItem *parent=nullptr)

    • 创建一个QGraphicsTextItem对象,并设置其初始文本内容和父项。
  2. 设置文本内容

    • void setPlainText(const QString &text):设置文本的纯文本内容。
    • void setHtml(const QString &text):设置文本的HTML内容。
  3. 设置文本的样式

    • void setDefaultTextColor(const QColor &col):设置默认文本颜色。
    • void setFont(const QFont &font):设置文本的字体。
  4. 设置文本的布局

    • void setTextWidth(qreal width):设置文本的首选宽度。
  5. 设置文本的交互方式

    • void setTextInteractionFlags(Qt::TextInteractionFlags flags):设置文本项的交互标志,如是否可选择、是否可编辑等。
  6. 其他常用函数

    • QTextCursor textCursor() const:返回文本光标。
    • void setTextCursor(const QTextCursor &cursor):设置文本光标。
    • bool openExternalLinks() const:返回是否自动打开外部链接。
    • void setOpenExternalLinks(bool open):设置是否自动打开外部链接。
QGraphicsScene scene;
scene.setSceneRect(0,0,800,480);
QGraphicsView view(&scene);QGraphicsTextItem *textItem = new QGraphicsTextItem();
textItem->setPlainText("这是一个QGraphicsTextItem示例");
textItem->setDefaultTextColor(Qt::blue);
QFont font("Arial", 16, QFont::Bold);
textItem->setFont(font);
textItem->setTextWidth(200);scene.addItem(textItem);
textItem->setPos(0, 0); // 设置文本项的位置
/*
QPropertyAnimation *animation = new QPropertyAnimation(textItem, "pos");
animation->setDuration(5000);
animation->setStartValue(QPointF(0, 0));
animation->setEndValue(QPointF(400, 400));
animation->start();
animation->setLoopCount(-1);
*/
view.show();

qq群交流:698593923

觉得有帮助的话,打赏一下呗。。

           


http://www.mrgr.cn/news/47038.html

相关文章:

  • LabVIEW光流算法的应用
  • easyui datagrid表头和网格错位问题
  • 多线程与多进程性能分析与最佳实践
  • 第 5 场 算法季度赛
  • 深入学习 Python 量化编程
  • Spring Boot中的配置文件有哪些类型
  • PHP智慧餐饮新风尚点餐系统
  • g++打包和gdb调试c++程序
  • BOM常见操作方法汇总
  • 微信公众号开发---获取用户信息(第⑧篇)
  • PHP实现OID(Object identifier)的编码和解码
  • 在 ubantu 20.04 云服务器上基于 bochs 编译 linux0.11
  • Unity 快速定位到目标文件夹
  • 【时间之外】为什么你在网站买东西比别人贵?
  • 绘制YOLOv11模型在训练过程中,精准率,召回率,mAP_0.5,mAP_0.5:0.95,以及各种损失的变化曲线
  • Sequelize条件查询,count总数不对
  • Python中的HTTP高手:如何玩转requests模块
  • Unity 3d 继承MonoBahaviour的单例
  • webpack
  • 革新锂电池PACK线:重塑生产效能新高度
  • 2024年特种设备考试真题题库及答案
  • QUIC:革新网络传输的新一代协议
  • 【网页设计】CSS Part2
  • 堆区空间操作
  • 基于 C# .NET Framework 4.0 开发实现 WCF 服务实例详解(一)
  • selenium获取cookie的方法