本文整理汇总了C++中QPlainTextEdit::maximumBlockCount方法的典型用法代码示例。如果您正苦于以下问题:C++ QPlainTextEdit::maximumBlockCount方法的具体用法?C++ QPlainTextEdit::maximumBlockCount怎么用?C++ QPlainTextEdit::maximumBlockCount使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类QPlainTextEdit
的用法示例。
在下文中一共展示了QPlainTextEdit::maximumBlockCount方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: onTimeout
void LogWindow::onTimeout()
{
QMap<QPlainTextEdit*, QStringList> updates;
QStringList buffer;
{
// lock scope
QMutexLocker lock(&sMutex);
buffer = mBuffer;
mBuffer = QStringList();
mAllBuffer = QString();
QMutableMapIterator<int, LogTypeStruct> messages(mLogTypes);
while(messages.hasNext())
{
LogTypeStruct& logType = messages.next().value();
if(logType.buffer.isEmpty())
continue;
updates.insert(logType.edit, logType.buffer);
logType.buffer = QStringList();
}
}
int maxBlocks = ui->plainTextEdit->maximumBlockCount();
int startElement = qMax(0, buffer.size()-maxBlocks);
for(int i=startElement; i<buffer.size(); i++)
{
ui->plainTextEdit->appendPlainText(buffer[i]);
}
QApplication::processEvents();
QMapIterator<QPlainTextEdit*, QStringList> iter(updates);
while(iter.hasNext())
{
iter.next();
QPlainTextEdit* edit = iter.key();
const QStringList& dataBuffer = iter.value();
maxBlocks = edit->maximumBlockCount();
startElement = qMax(0, dataBuffer.size()-maxBlocks);
for(int i=startElement; i<dataBuffer.size(); i++)
{
edit->appendPlainText(dataBuffer[i]);
}
QApplication::processEvents();
}
mTimer.start(300);
}