我的代码是:
QWebElement doc = ui->webVIEw->page()->mainFrame()->documentElement();QWebElement iframe = doc.findFirst("iframe[ID=someID]");QWebFrame *webFrame = ....? // how to get the QWebFrame for an iframe/frame QWebElement?
注意:
我可以遍历所有帧(包括嵌套):
voID MainWindow::renderFramesTree(QWebFrame *frame,int indent){ QString s; s.fill(' ',indent * 4); ui->textLog->appendplainText(s + " " + frame->framename()); foreach (QWebFrame *child,frame->childFrames()) renderFramesTree(child,indent + 1);}
但我的问题与此无关.我需要得到iframe-QWebElement的相应QWebFrame *.
感谢名单!
解决方法 每个QWebFrame具有QList< QWebFrame *> QWebFrame :: childFrames()const方法.每个帧还有QString QWebFrame :: framename()const.结合两者可以让你找到你需要的东西.QWebFrame * frameImLookingFor = NulL;foreach(QWebFrame * frame,ui->webVIEw->page()->mainFrame()->childFrames()){ if (frame->framename() == Qlatin1String("appFrame")) { frameImLookingFor = frame; break; }}if (frameImLookingFor){ // do what you need}总结
以上是内存溢出为你收集整理的qt – 如何获取iframe / frame QWebElement的QWebFrame?全部内容,希望文章能够帮你解决qt – 如何获取iframe / frame QWebElement的QWebFrame?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)