精华内容
下载资源
问答
  • 拖动文本qtextedit直接打开 bool Widget::eventFilter(QObject *object, QEvent *event) { if(object == ui->textEdit) { if(event->type() == QEvent::DragEnter) { QDragEnterEvent *drap = static_...

     以下方法分享Qt拖动文本并直接显示的简单方法

    txtEdit需绑定事件过滤器

    拖动文本到qtextedit直接打开
    bool Widget::eventFilter(QObject *object, QEvent *event)
    {
        if(object == ui->textEdit)
        {
            if(event->type() == QEvent::DragEnter)
            {
                QDragEnterEvent *drap = static_cast<QDragEnterEvent *>(event);
                if(drap->mimeData()->hasFormat("text/uri-list"))
                {
                    drap->acceptProposedAction();
                }
            }
            if(event->type() == QEvent::Drop)
            {
                QDropEvent *drop = static_cast<QDropEvent *>(event);
                QList<QUrl> urls = drop->mimeData()->urls();
                if(urls.isEmpty())
                {
                    return false;
                }
                QString filename = urls.first().toLocalFile();
                if(!filename.isEmpty())
                {
                    QFile file(filename);
                    QString content;
                    if(file.open(QFile::ReadOnly | QFile::Text))
                    {
                        QTextStream out(&file);
                        while(!out.atEnd())
                        {
                            content = out.readAll();
                        }
                    }
                    QTextEdit *txtEdit = qobject_cast<QTextEdit *>(object);
                    txtEdit->setText(content);
                }
            }
            return true;
        }
        return QWidget::eventFilter(object,event);
    }

     

    展开全文
  • QTextEdit设置文本样式

    2021-05-17 08:49:53
    QTextEdit可以通过qss设置边框属性,但是由于QTextEdit本身显示的是一个HTML,所以不能像其他的控件直接使用qss对文本设置样式。 看一个我们再QtDesigner中对一个QTextEdit进行文本编辑的例子: 上图的HTML中有...

    QTextEdit可以通过qss设置边框属性,但是由于QTextEdit本身显示的是一个HTML,所以不能像其他的控件直接使用qss对文本设置样式。

    看一个我们再QtDesigner中对一个QTextEdit进行文本编辑的例子:

     

      上图的HTML中有好几个标签都有样式,譬如<body>,<p>,<span>等,到底应该修改哪个标签的样式呢?

      1.修改文本边距和行高

    <p style="margin-top:12px; margin-bottom:12px; margin-left:12px; margin-right:12px; line-height:20px; ">

      2.修改字体,颜色和大小

    <span style="font-family:'MicrosoftYaHei';font-size:12px; color:#eeeeee;”>

     

    展开全文
  • highlight_cursor.atEnd()) { //查找指定的文本,匹配整个单词 highlight_cursor = document->find(search_text, highlight_cursor, QTextDocument::FindWholeWords); if (!highlight_cursor.isNull()) ...
    QString search_text = ui->lineEdit->text();
    	if (search_text.trimmed().isEmpty()) 
    	{
    		return;
    	}
    	else 
    	{
    		QTextDocument *document = ui->textEdit->document();
    		bool found = false;
    		QTextCursor highlight_cursor(document);
    		QTextCursor cursor(document);
    		//开始
    		cursor.beginEditBlock();
    		QTextCharFormat color_format(highlight_cursor.charFormat());
    		color_format.setForeground(Qt::red);   //字体颜色
    		color_format.setBackground(Qt::blue);  //背景颜色
    		while (!highlight_cursor.isNull() && !highlight_cursor.atEnd()) 
    		{
    			//查找指定的文本,匹配整个单词
    			highlight_cursor = document->find(search_text, highlight_cursor, QTextDocument::FindWholeWords);
    			if (!highlight_cursor.isNull()) 
    			{
    				if (!found)
    					found = true;
    				highlight_cursor.mergeCharFormat(color_format);
    			}
    		}
    		cursor.endEditBlock();
    	}

     

    展开全文
  • 6.1同步显示文本 6.2小结 6.1同步显示文本 相信通过这两个控件的中文名大家应该也知道这两个控件的功能是什么了,前者用来编辑文本,后者无法编辑,只用于显示。我们将通过完成以下程序来讲解这两个控件的用法: ...

    第六章 文本编辑框QTextEdit和文本浏览框QTextBrowser
    6.1 同步显示文本

    6.2 小结

    6.1 同步显示文本
    相信通过这两个控件的中文名大家应该也知道这两个控件的功能是什么了,前者用来编辑文本,后者无法编辑,只用于显示。我们将通过完成以下程序来讲解这两个控件的用法:

    左边为QTextEdit控件,右边为QTextBrowser控件。在左边输入文字时,右边会同步显示。请看下方代码:

    import sys
    from PyQt5.QtWidgets import QApplication, QWidget, QLabel, QTextEdit, QTextBrowser, QHBoxLayout, QVBoxLayout
     
     
    class Demo(QWidget):
        def __init__(self):
            super(Demo, self).__init__()
            self.edit_label = QLabel('QTextEdit', self)
            self.browser_label = QLabel('QTextBrowser', self)
            self.text_edit = QTextEdit(self)
            self.text_browser = QTextBrowser(self)
     
            self.edit_v_layout = QVBoxLayout()
            self.browser_v_layout = QVBoxLayout()
            self.all_h_layout = QHBoxLayout()
     
            self.layout_init()
            self.text_edit_init()
     
        def layout_init(self):
            self.edit_v_layout.addWidget(self.edit_label)
            self.edit_v_layout.addWidget(self.text_edit)
     
            self.browser_v_layout.addWidget(self.browser_label)
            self.browser_v_layout.addWidget(self.text_browser)
     
            self.all_h_layout.addLayout(self.edit_v_layout)
            self.all_h_layout.addLayout(self.browser_v_layout)
     
            self.setLayout(self.all_h_layout)
     
        def text_edit_init(self):
            self.text_edit.textChanged.connect(self.show_text_func)  # 1
     
        def show_text_func(self):
            self.text_browser.setText(self.text_edit.toPlainText())  # 2
     
     
    if __name__ == '__main__':
        app = QApplication(sys.argv)
        demo = Demo()
        demo.show()
        sys.exit(app.exec_())
    程序非常简单。通过实例化两个QLabel、一个QTextEdit以及一个QTextBrowser再通过垂直布局和水平布局就可以完成整个界面。关键点是在信号和槽的连接上。

    1. 将self.text_edit的textChanged信号连接到自定义的槽函数上。也就是说当self.text_edit中的文本发生改变的时候,就会发出textChanged信号,然后调用show_text_func()槽函数。

    2. 在槽函数中我们通过setText()方法将self.text_browser的文本设为self.text_edit的文本,而self.text_edit的文本通过toPlainText()获取,而不是text().

     

    有趣的是,当我们在编辑框中输入Html代码时,右边的浏览框会对其执行:

    这里只是简单的介绍这两个控件的使用,不过其实也已经很够用了。等之后用到这两个控件的其他方法时,会再详细介绍。

     

    6.2 小结
    1. 顾名思义,QTextEdit为用来编辑文本,而QTextBrowser用来显示文本;

    2. setText()用来设置文本,toPlainText()用来获取文本,这两个控件都有这些方法;

    3. 浏览框会执行Html代码。
    ————————————————
     

    展开全文
  • 6.1同步显示文本 6.2小结 6.1同步显示文本 相信通过这两个控件的中文名大家应该也知道这两个控件的功能是什么了,前者用来编辑文本,后者无法编辑,只用于显示。我们将通过完成以下程序来讲解这两个控件的用法: ...
  • 1 同步显示文本 相信通过这两个控件的中文名大家应该也知道这两个控件的功能是什么了,前者用来编辑文本,后者无法编辑,只用于显示。我们将通过完成以下程序来讲解这两个控件的用法: 左边为QTextEdit控件,...
  • 偶使用 QT 做一个数据接收到 PC 端应用,需要显示普通字符串和 HEX 格式两种。 先是做了一个 QTextEdit ,然后在源代码中使用两个 QString 分析记录...需要如何处理,才能使用 QT 显示大量的文本、并支持 HEX 显示
  • 1,文本编辑框QTextEdit文本浏览框QTextBrowser 相信通过这两个控件的中文名大家应该也知道这两个控件的功能是什么了,前者用来编辑文本,后者无法编辑,只用于显示。 接下来,将通过完成以下程序来讲解这两个...
  • QTextEdit实现图片和文本同行显示

    千次阅读 2020-03-01 23:41:07
    1.开发环境:Qt 4.7.3 + MinGW 32bit (MSVC2015 32bit) 2.实现大纲: 1)实现图片和文本在同一行显示,且能够设置字体大小和颜色 2)能够手动设置行的宽度和... 1)QTextEdit支持文本和图片显示,通过将图片...
  • QTextEdit文本编辑框的光标移动

    万次阅读 2017-05-12 17:33:11
    用Qt写一个串口调试工具,用一个QTextEdit作为接收显示区。发现每次串口调试工具接收完一帧数据后,QTextEdit的光标自动跳到文本开头的位置。这样,当接收到大量数据后,就要手动拉动滑块进行翻页,才能看到最新的...
  • 文本编辑框QTextEdit

    2019-02-09 11:30:00
    QTextEdit类是一个多行文本框控件,可以显示多行文本内容,当文本内容超出控件显示范围时,可以显示水平个垂直滚动条,Qtextedit不仅可以用来显示文本还可以用来显示HTML4文档,图像,表格 任何一个文本编辑器的程序...
  • 在Qt界面开发中,有时我们需要特殊强调某一段文字里的一两个词或前面前一个标题等标记性文字,如果用多个控件组合展示,布局显示得很别扭,那边有没有用一个控件展示这种效果呢,答案是肯定的,下面用QTextEdit来...
  • 1.QTextEdit接收文本 QString str1 = ui->textEdit->toPlainText(); QByteArray str2 = QByteArray::fromHex (str1.toLatin1().data());//按十六进制编码接入...2.QTextEdit显示文本  QString strDis;  QStr
  • 我们知道英语,汉语等很多语言是从左往右写的,可是像阿拉伯语,维吾尔语等有些语言是从右往左写的,那么也就是说在QTextEdit 中的文字也要从右往左排列,那么怎么实现这一功能。就是要 如图所示的效果。谢谢大家。...
  • QTextEdit实时显示运行结果

    万次阅读 2016-08-16 20:08:42
    我采用了QTextEdit控件来显示文本。实现主要流程如下: 1,每一帧图像检测完成后,调用一个消息函数,消息函数的参数为要显示的QString; 2,收到消息后槽函数执行文本显示函数。 示例: 1.h
  • QTextEdit类提供了一个部件,用于编辑和显示文本和富文本QTextEdit的一些方法和属性: toPlainText():获取文本 setText():设置文本 textChanged:文本改变信号(在文本每次发生改变时发射) clear():清空...
  • (1)在QTextEdit中展示一些模板文本,然后一些关键数据可以进行选择替换,比如像如下代码所示,模板原始数据的一些关键数据通过方括号括起来( [我|你|他] ),可选内容通过竖线分割,在QTextEdit中展示时只显示可...
  • 目前我个人在做项目中遇到的问题就是,在禁止掉水平,锤子的滑动条的情况下,输入的文本查出编辑框的时候,下面的文本会将上面的文本顶出编辑框的大小,显示不全, 具体解决,首先设置编辑器的属性为不能换行(this-&...
  • 文本编辑器一样,想要在QTextEdit前面实时显示行数,用户换一行,左边的行数的增加一行,如何实现这种效果?求~
  • PyQt5随笔:QTextEdit、QTextBrowser添加的文字超出视图后,滑动条自动移至最底部,显示最新文本解决 1.前言 QTextEdit/QTextBrowser设置文本的简单函数:setPlainText(),setText() 这两个函数是我们初学PyQt5接触的...
  • 在构造函数中定义 一个QTextEdit对象: m_pText = new QTextEdit(this); 实现函数如下: QString fileName = QFileDialog::getOpenFileName(this,tr("Open a File"),".
  • 20130222 鬼猫猫 整理 ... ... 背景 在实现纯文本QTextEdit的查找功能的时候,查找对话框以exec方式运行,对QTextEdit的字符串进行查找,对查找的字符串进行高亮显示,可是这时高亮显示的字符串是灰白色的. ...
  • 在ui界面中,把qtextedit的 控件textInteractionFlags选项的NoTextInteraction打钩,然后发现其余√全没了,上面的readonly自动勾选,此时就设置完成滑动时 不高亮选中任何文本,仅查看数据。 在cpp初始化函数中,...
  • 多行文本框QTextEdit

    千次阅读 2019-07-30 21:34:30
    QTextEdit不仅可以显示文本还可以显示HTML文档。 方法 QlabeL常用方法 方法 描述 setPlainText() 设置多行文本框的文本内容 toPlainText() 返回多行文本框的文本内容 setHtml() 设置多行文本框的内...
  • QTextEdit是一个高级的所见即所得的文档查看器和编辑器,支持使用HTML4样式标记的富文本格式,可以显示图像、列表和表格。 PyQt的富文本处理提供了一系列丰富的类,包括QTextEdit、QTextDocument、QTextCharFormat、...
  • QTextEit用于多行文本,也可以显示HTML格式文本,QTextEdit 可以将 纯文本plainText 转化为 富文本 htmlText QPlainTextEdit 为纯文本的编辑框,QTextEdit 支持富文本。 QTextBrowser无法编辑,只用于显示。 ...
  • Pyqt5_QtextEdit

    2018-10-18 19:47:00
    QTextEdit类是一个多行文本框控件,可以显示多行文本内容,当文本内容超出控件显示范围时,可以显示水平个垂直滚动条,Qtextedit不仅可以用来显示文本还可以用来显示HTML文档 方法 setPlainText() 设置多行文本框...
  • self.pa.teeeee.setHtml(newhtml) # 将渲染好的HTML格式富文本显示出来 class Pywindow(QMainWindow): def __init__(self): super(Pywindow, self).__init__() self.resize(400, 500) # 主窗口尺寸 self.te &...

空空如也

空空如也

1 2 3 4 5 ... 7
收藏数 133
精华内容 53
关键字:

qtextedit显示文本