QTextEdit中添加图片

qt中文本编辑框qtextedit,如果希望向文本编辑框中添加图片

有两种方法

第一个:通过URL自愿形式

QTextEdit *editor=new QTextEdit;  

 this->editor->append(“<img src=/”1.png/n  //通过URL来插入到editor中

第二个:通过QTextImageFormat,利用QTextCursor来插入到文本编辑中
    QTextImageFormat imageFormat;   //保存图片格式对象
    imageFormat.setName(“1.png”);
    QTextCursor cursor;                         //编辑指针标
    cursor.insertImage(imageFormat);   //通过编辑指针表把图片格式的文件插入到资源中

 

 

 

还可以借助QTextDocument把图片作为资源添加到QTextEdit中

The QTextDocument class holds formatted text that can be viewed and edited using a QTextEdit.

QTextDocument is a container for structured rich text documents,

A QTextDocument can be edited programmatically using a QTextCursor,

[QTextDocument]类包含了qtextedit可以查看和编辑的格式化的文本,是一个结构化的富文本容器,一个QTextDocument 对象可以通过QTextCursor在程序中编辑。

 

 把图片添加到资源缓存中

QTextDocument *document=new QTextDocument(this);  //图片容器
    QUrl url;
    url = QUrl::fromLocalFile(“1.png”);   //指定Url
    document->addResource(QTextDocument::ImageResource,url,QVariant(url));  //添加资源到document容器中

QT中给的Demo感觉好麻烦

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
QTextEdit添加图片,可以使用QTextCursor类来设置光标位置并插入图片。下面是一个示例代码: ```python from PyQt5.QtWidgets import QTextEdit from PyQt5.QtGui import QTextCursor, QTextImageFormat, QImage class MyTextEdit(QTextEdit): def __init__(self, parent=None): super().__init__(parent) def insertImage(self, imagePath, width=100, height=100): cursor = self.textCursor() image = QImage(imagePath) imageFormat = QTextImageFormat() imageFormat.setWidth(width) imageFormat.setHeight(height) imageFormat.setName(imagePath) cursor.insertImage(imageFormat) ``` 在上面的代码,我们定义了一个MyTextEdit类,它继承自QTextEdit。我们添加了一个名为insertImage的方法,该方法接受一个图像路径和图像大小,并将图像插入到当前光标位置。在方法,我们使用QTextCursor类获取当前光标位置,并使用QTextImageFormat类设置插入的图像的大小和名称。最后,我们调用insertImage方法将图像插入到光标位置。 你可以使用以下代码来测试MyTextEdit类: ```python from PyQt5.QtWidgets import QApplication, QMainWindow import sys if __name__ == '__main__': app = QApplication(sys.argv) mainWindow = QMainWindow() textEdit = MyTextEdit() mainWindow.setCentralWidget(textEdit) mainWindow.show() textEdit.insertImage('image.png', 200, 200) sys.exit(app.exec_()) ``` 在上面的代码,我们创建了一个主窗口,并将MyTextEdit实例设置为央窗口部件。我们还在MyTextEdit实例插入了一个200x200像素的图像。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值