如何对QTextEdit的文本实现双向查找操作?

pengcao89 2012-05-01 08:08:02
如何对QTextEdit的文本实现双向查找操作?



QString findStr = find_textLineEdit->text(); if(!ui->textBrowser->find(findStr,QTextDocument::FindBackward)){
QMessageBox::warning(this,tr("Find"),tr("No Find %1") .arg(findStr));
}上面的是,实现向后查找,也就是从文本的最下面一直到开头!
问题:
1、如何实现从文本的开头查找到文本的结尾?
当查找到文本的结尾或者开头之后,再次点击查找的时候,会弹出QMessageBox。
2、我怎么实现,从开头查到结尾然后又从开头到结尾的这样查询呢?
...全文
251 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
capjason 2012-07-16
  • 打赏
  • 举报
回复
void MainWindow::slotFind(){
QString findtxt = editFind->text();
if(findtxt.isEmpty()){
QMessageBox::warning(this,tr("warning"),tr("No input"));
}else{
text->moveCursor(QTextCursor::Start);
if(!text->find(findtxt)){
QMessageBox::StandardButton btn;
btn = QMessageBox::information(this,tr("Find"),"cannot find,"+findtxt+"\ntry again?",QMessageBox::Ok,QMessageBox::Abort);
if(btn == QMessageBox::Ok){
text->moveCursor(QTextCursor::Start);
slotFind();
}
}
}
}

这是我写的方法,至于LZ另外的需求应该很容易实现了。。。

16,235

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧