我有一个QTextEdit,我正在从名为m_text的变量中存储一些文本。文本以以下方式存储在其中:
Info Plot
等等...
这就是m_text中存储的内容,它基本上是我需要的文本加上一些HTML,以表格、下划线等方式显示。
我使用setText(m_text)在QTextEdit上设置文本,将变量中的内容存储到编辑文本中。我的问题是,如何精确地获取那个文本,可能还包括一些用户添加的内容(比如他们想稍微改变一下)?toPlainText()返回除了HTML标签之外的所有内容,而toHtml()返回一个包含大量不需要或不想要的内容的字符串(如果可能的话,我不想搜索它们)。
我已经使用这些基本结构标记(如表格)编写了整个代码,用于从中获取某些信息并更改其他信息,因此如果可能的话,我想保留我所做的方式。
是否有任何方法可以将我放入m_text中的所有数据和标记以相同的方式取回?
Name: | 50A40 |
这就是m_text中存储的内容,它基本上是我需要的文本加上一些HTML,以表格、下划线等方式显示。
我使用setText(m_text)在QTextEdit上设置文本,将变量中的内容存储到编辑文本中。我的问题是,如何精确地获取那个文本,可能还包括一些用户添加的内容(比如他们想稍微改变一下)?toPlainText()返回除了HTML标签之外的所有内容,而toHtml()返回一个包含大量不需要或不想要的内容的字符串(如果可能的话,我不想搜索它们)。
我已经使用这些基本结构标记(如表格)编写了整个代码,用于从中获取某些信息并更改其他信息,因此如果可能的话,我想保留我所做的方式。
是否有任何方法可以将我放入m_text中的所有数据和标记以相同的方式取回?
#include <QDialog>
class plotInfoDialog : public QDialog
{
public:
plotInfoDialog();
void setQTextEdit();
void getFreeTextEditText();
public slots:
void editChange();
private:
QString m_text;
};
plotInfoDialog::plotInfoDialog() {
m_ui = new Ui::plotInfoDialog();
m_ui->setupUi(this);
this->show();
m_text = "<u> <center>Plot Info</center> </u> <br><table><tr><td>Name: </td><td> #BASENAME#</td></tr><tr><td>Date: </td><td>#DATE# </td></tr><tr><td>Time: </td><td>#TIME# </td></tr><tr><td>Radar: </td><td>#RADAR#</td></tr><tr><td>Polarization: </td><td> #P#</td></tr><tr><td>Range: </td><td>#RANGE# </td></tr><tr><td>Elevation: </td><td> #ELEV# </td></tr></table>";
setQTextEdit();
connect(m_ui->FreeTextEdit->document(), SIGNAL(contentsChange(int,int,int)), this, SLOT(editChange(int,int,int)));
}
void plotInfoDialog::setQTextEdit() {
m_ui->FreeTextEdit->setText(m_text);
}
void plotInfoDialog::editChange(int pos, int del, int add)
{
//update m_text with changes in FreeTextEdit here
}
void plotInfoDialog::getFreeTextEditText() {
m_text = //get text from FreeTextEdit here
}