1

我正在尝试在 QT 中制作聊天应用程序。是否可以从 QT GUI 的文本浏览器(显示对话)读取数据,以便我可以维护聊天记录...?请帮助..谢谢

4

2 回答 2

2

QTextBrowser继承,QTextEdit它适用于 a QTextDocument。可以使用以下命令将 QTextDocument 转换为(并另存为)HTML QTextDocument::toHtml()

QTextDocument *doc = ui->textBrowser->document();
QString html = doc->toHtml();

我建议您每次有新消息进入/发出时都附加到日志文件,因此“并行”更新 QTextBrowser 和文件,而不是每次出现新消息时都保存整个聊天历史记录。

为此,请打开日志文件并手动写入 open<html><body>标签而不关闭它们。然后将聊天日志条目附加到仍然打开的文件上。在应用程序退出时(聊天窗口的对象销毁或其他),关闭</body>and</html>标记,然后关闭文件本身。与每次更改 QTextBrowser 小部件时保存整个文件相比,这将产生更好的性能。

于 2012-08-03T12:24:34.183 回答
0

有这样的东西:

QString myQString = <textBrowserObject>.toPlainText();
于 2014-05-05T17:35:05.413 回答