添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

一、设置显示内容的两种方式(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);
t ext Browser->append("hello "); t ext Browser->append("world"); appen接口会 自动 换行,所以会在文本框中打印: hello world 2.追加文本不 自动 换行 t ext Browser-> insert Pla inTe xt ("hello "); t ext Browser-> insert Pl QT ext Edit 详解 ( 设置 显示 内容 两种 方式 set Pla inTe xt / insert Pla inTe xt 滚动条 自动 ( 往下 往上 ) 滚动 ……) 第一次比较深入地使用 QT ext Edit ,发现里面的 内容 十分丰富,官方文档释义: The QT ext Edit class provides a widget that is used to edit and dis pla y both pla in and rich t ext (用于编辑和 显示 纯文本和富文本) 所以能做很多的事情,现在把我的使用收获记录下来,话不多说,直接进入主题 所属头文件 #include < QT ext Edit > // 指定... 最近在使用 QT ext Browser的时候,发现append()很奇特:有时候会莫名的换行,使得 显示 很不美观,所以决定小研究了一下,下面是我的研究结果: append()函数的英文说明: Appends a new paragraph with t ext to the end of the t ext edit . 这段说明在 QT ext Browser的说明文档中没有找到,但在它的父级 QT ext Edi Py Qt 5随笔: QT ext Edit QT ext Browser文本框多次 设置 输入 内容 时, 显示 全部 内容 的方法 QT ext Edit QT ext Browser 文本控件方法基本一样,只不过 QT ext Edit 可以程序读写和用户进行输入两个操作。 QT ext Browser 只能进行程序读写,用户不能输入,适合用来 显示 多行文本。 在使用 set Pla inTe xt ()或 set T ext () 设置 QT ext Edit QT ext Browser 文本框 内容 时,后一次 设置 内容 会覆盖前一次的 设置 内容 。 ui->t ext Dsy-> insert Pla inTe xt (but); 避免中文 显示 出错的写法如下: const String strDa=String::fromLocal8Bit(but); ui->t ext Dsy-> insert Pla inTe xt (strDa);