QWebKit 的问题,解决不了就被开了,帮帮忙!!!

wylove08 2014-10-21 09:13:12
QWebPage、QWebView 访问 www.youtube.com
在网页上鼠标左键点击链接 linkClicked urlChanged 信号都没反应(特别是左边浏览视频,右边是列表链接,怎么点都没反应)。 奇怪。。。。


QWebPage* page = new MyWebPage();

page->setLinkDelegationPolicy(QWebPage::DelegateAllLinks);

ui.webView->setPage(page);
connect(ui.webView, SIGNAL(linkClicked(const QUrl &)), this, SLOT(linkClickedSlot(const QUrl &)));
connect(ui.webView, SIGNAL(urlChanged ( const QUrl & )), this, SLOT(UrlChangedSlot( const QUrl & )));

QString strUrl = "www.youtube.com";
QUrl url = QUrl::fromUserInput(strUrl);
ui.webView->load(url);


bool MyWebPage::acceptNavigationRequest(QWebFrame *frame, const QNetworkRequest &request, NavigationType type)
{
QString strUrl = request.url().toString(); //当前页点击 这个返回的是 about::blank , 但ctrl + 鼠标左键,新打开一个网页 是ok的

//此处省略 按ctrl + 鼠标左键 new tab 的 代码

if (frame == mainFrame())
{
//这里进不去, 非youtube 外 ,在同一个页面打开是可以进这里的。

}

return QWebPage::acceptNavigationRequest(frame, request, type);

}

发现 youtube.com 返回的 frame 完全不一样
...全文
309 1 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
陈晓明start 2014-10-21
  • 打赏
  • 举报
回复
估计是webView里面的控件需要传信号,而不是webView。
资源下载链接为: https://pan.quark.cn/s/dab15056c6a5 在嵌入式 Qt 发中,实现地图功能是一个常见需求。本文将介绍如何利用 QWebKit 在嵌入式设备上实现百度地图的在线与离线切换,以及街道地图与卫星地图的切换功能。此外,还将涵盖坐标查找和添加坐标的实用功能。这些内容适合嵌入式 Qt 地图发的初学者参考。 离线地图的更新是实现离线功能的关键。目前离线地图 API 提供了 v1.0 和 v1.3 两个版本。发者可以根据实际需求选择合适的版本进行集成。离线地图数据的更新需要借助地图下载工具来完成。这里推荐使用“全能地图下载器”。需要注意的是,该工具未注册时下载的地图图片会带有水印,但不影响学习和发过程中的使用。 通过 QWebKit,可以在嵌入式 Qt 应用中轻松实现在线地图与离线地图的切换。发者需要在代码中设置相应的逻辑,根据用户的操作或网络状态,动态加载在线地图或离线地图数据。这种切换功能可以让用户在没有网络的情况下依然能够使用地图服务,提升用户体验。 除了在线与离线的切换,还可以实现街道地图与卫星地图的切换。用户可以根据自己的需求选择查看详细的街道信息,或者通过卫星地图查看更宏观的地理环境。在 QWebKit 中,可以通过调用百度地图的 API 接口来实现这两种地图类型的切换,为用户提供更丰富的地图查看方式。 坐标查找功能允许用户输入特定的地址或地点名称,系统会通过地图 API 进行搜索,并在地图上标注出相应的坐标位置。这对于用户快速定位目标地点非常有帮助。此外,还可以实现添加坐标的功能,用户可以在地图上手动标记新的位置,并保存这些坐标信息以便后续使用。这些功能的实现将大大增强地图应用的实用性和交互性。 本文所介绍的功能只是嵌入式 Qt 地图发的基础部分。后续还可以根据实际需求添加更多高级功能,如路线规划、地图标注编辑、地

16,818

社区成员

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

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