我想创建一个程序,我将每行QPlainTextEdit发送到WebView,它将加载这些URL。我不需要检查URL,因为系统就像那样
http://someurl.com/ + each line of the QPlainTextEdit
我有一些我不知道如何使用的想法:
所有这些都将通过等待另一个计时器每4个小时完成。
答案 0 :(得分:6)
首先,您需要QPlainTextEdit
的内容。获取它们并使用新行分隔符将它们拆分,以获得每个代表一行的QStrings
列表。
QString plainTextEditContents = ui->plainTextEdit->toPlainText()
QStringList lines = plainTextEditContents.split("\n");
处理这些行的最简单方法是使用QTimer
并将当前索引存储在列表中。
// Start the timer
QTimer *timer = new QTimer(this);
connect(timer, SIGNAL(timeout()), this, SLOT(processLine()));
timer->start(5000);
现在,只要触发定时器,就会调用插槽。它只是获取当前行,你可以随心所欲地完成任务。
void processLine(){
// This is the current index in the string list. If we have reached the end
// then we stop the timer.
currentIndex ++;
if (currentIndex == lines.count())
{
timer.stop();
currentIndex = 0;
return;
}
QString currentLine = lines[currentIndex];
doSomethingWithTheLine(currentLine);
}
与4h计时器类似。