QTextEdit详解(设置显示内容的两种方式(setPlainText/insertPlainText、滚动条自动(往下、往上)滚动……)

您所在的位置:网站首页 获取控件内容的方法是 QTextEdit详解(设置显示内容的两种方式(setPlainText/insertPlainText、滚动条自动(往下、往上)滚动……)

QTextEdit详解(设置显示内容的两种方式(setPlainText/insertPlainText、滚动条自动(往下、往上)滚动……)

2024-07-04 04:07| 来源: 网络整理| 查看: 265

目录

一、设置显示内容的两种方式(setPlainText/insertPlainText)

二、滚动条自动(往下、往上)滚动

三、如何设置背景颜色/背景图片 

一、设置显示内容的两种方式(setPlainText/insertPlainText)

1、void setPlainText ( const QString & text )

m_tcpRecText->setPlainText(sTemp);

2、void QTextEdit::insertPlainText ( const QString & text )

m_tcpRecText->insertPlainText(sTemp);

两者设置的区别:

第一种方法每次显示之前都会清空之前显示的内容

第二种方法则不会自动清空,内容会一直在

3、 获取QTextEdit文本内容:QString toPlainText () const

QString m_sXml = m_tcpRecText->toPlainText();

二、滚动条自动(往下、往上)滚动

前因:用textedit接受数据,但是超过当前文本框大小后不会跟着走就看不见最新接收的数据

解决方法:连接信号textChanged()每当有新数据,将自动滚动到底部:

QTextEdit *m_tcpRecText = new QTextEdit(); connect(m_tcpRecText,SIGNAL(textChanged()),SLOT(slotTextTcpChanged())); //槽函数里的内容 m_tcpRecText->moveCursor(QTextCursor::End);

当然修改moveCursor里的参数有不同的效果:

QTextCursor::Start移动到文档的开头QTextCursor::StartOfLine移动到当前行的开头QTextCursor::End移动到文档末尾QTextCursor::EndOfLine移动到当前行的末尾(内容够多的话,效果和end的一样)

 

三、如何设置背景颜色/背景图片 

·设置背景颜色

m_recText = new QTextEdit(); m_recText->setReadOnly(true); QPalette pal = m_recText->palette(); // 设置画刷,填充背景颜色 pal.setBrush(QPalette::Base, QColor("#B4EEB4")); // 取消继承父类的背景样式 m_recText->setAutoFillBackground(true); // QTextEdit设置调色板,即填充了背景图片 m_recText->setPalette(pal);

·设置背景图片

// 定义图片路径 const QString fileName = "C:/1.jpg"; QPalette pal = m_recText->palette(); // 设置画刷,填充背景图片,且调整了图片大小 pal.setBrush(QPalette::Base, QPixmap(fileName).scaled(m_recText->size())); // 取消继承父类的背景样式 m_recText->setAutoFillBackground(true); // QTextEdit设置调色板,即填充了背景图片 m_recText->setPalette(pal);



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3