QWebView加载网页
2016-06-27 20:55
239 查看
开发环境:win10家庭中文版,vs2013,qt5.5.1
目的:使用webkit加载web页面代码如下:
#include
#include
#ifdef _DEBUG#pragma comment(lib, "Qt5WebKitWidgetsd.lib")
#pragma comment(lib, "Qt5WebKitd.lib")
#else
#pragma comment(lib, "Qt5WebKitWidgets.lib")
#pragma comment(lib, "Qt5WebKit.lib")
#endifm_WebView = new QWebView(this);
QWebSettings * settings = m_WebView->settings();
QWebSettings::globalSettings();
settings->setAttribute(QWebSettings::PluginsEnabled, true);
settings->setAttribute(QWebSettings::JavaEnabled, true);
settings->setAttribute(QWebSettings::JavascriptEnabled, true);
settings->setAttribute(QWebSettings::JavascriptCanOpenWindows, true);
settings->setAttribute(QWebSettings::JavascriptCanAccessClipboard, true);
settings->setAttribute(QWebSettings::DeveloperExtrasEnabled, true);
settings->setAttribute(QWebSettings::SpatialNavigationEnabled, true);
settings->setAttribute(QWebSettings::LinksIncludedInFocusChain, true);
settings->setAttribute(QWebSettings::AcceleratedCompositingEnabled, true);
settings->setAttribute(QWebSettings::AutoLoadImages, true);
编译程序,使用dependency检测依赖动态库库,然后启动程序,加载网页一切正常,当加载视频和音频时出现异常,腾讯视频出现图1所示情况,爱奇艺 和优酷视频出现情况如图2,经过各种尝试,最终发现需要在exe同级目录下放置plugins文件夹,文件夹底下放置flash动态库 (NPSWF32.dll),或者自己下载一个动态库安装,这个动态库是firefox的flash player,测试结果如图3
图1腾讯视频
图2 爱奇艺测试结果
图3下载flash插件
上图3中的测试结果是在win7虚拟机上测试结果,win10上安装firefox的flash插件测试结构和上图一样
顺道说句:QT插件库(新增库,路径必须正确),根据不同的程序,需要不同的插件库例如:1、使用QMediaPlayer需要添加plugins目录下的mediaservice文件夹下的动态库2、使用除png外其他图片文件时,需要保护相应的图片插件动态库
目的:使用webkit加载web页面代码如下:
#include
#include
#ifdef _DEBUG#pragma comment(lib, "Qt5WebKitWidgetsd.lib")
#pragma comment(lib, "Qt5WebKitd.lib")
#else
#pragma comment(lib, "Qt5WebKitWidgets.lib")
#pragma comment(lib, "Qt5WebKit.lib")
#endifm_WebView = new QWebView(this);
QWebSettings * settings = m_WebView->settings();
QWebSettings::globalSettings();
settings->setAttribute(QWebSettings::PluginsEnabled, true);
settings->setAttribute(QWebSettings::JavaEnabled, true);
settings->setAttribute(QWebSettings::JavascriptEnabled, true);
settings->setAttribute(QWebSettings::JavascriptCanOpenWindows, true);
settings->setAttribute(QWebSettings::JavascriptCanAccessClipboard, true);
settings->setAttribute(QWebSettings::DeveloperExtrasEnabled, true);
settings->setAttribute(QWebSettings::SpatialNavigationEnabled, true);
settings->setAttribute(QWebSettings::LinksIncludedInFocusChain, true);
settings->setAttribute(QWebSettings::AcceleratedCompositingEnabled, true);
settings->setAttribute(QWebSettings::AutoLoadImages, true);
编译程序,使用dependency检测依赖动态库库,然后启动程序,加载网页一切正常,当加载视频和音频时出现异常,腾讯视频出现图1所示情况,爱奇艺 和优酷视频出现情况如图2,经过各种尝试,最终发现需要在exe同级目录下放置plugins文件夹,文件夹底下放置flash动态库 (NPSWF32.dll),或者自己下载一个动态库安装,这个动态库是firefox的flash player,测试结果如图3
图1腾讯视频
图2 爱奇艺测试结果
图3下载flash插件
上图3中的测试结果是在win7虚拟机上测试结果,win10上安装firefox的flash插件测试结构和上图一样
顺道说句:QT插件库(新增库,路径必须正确),根据不同的程序,需要不同的插件库例如:1、使用QMediaPlayer需要添加plugins目录下的mediaservice文件夹下的动态库2、使用除png外其他图片文件时,需要保护相应的图片插件动态库
相关文章推荐
- 【iOS】MD5(加密)/AES/Base64加密和解密
- iOS应用如何支持IPV6-b
- iOS 通知中心扩展制作初步-b
- iOS 数据持久化方式 - 归档 反归档
- Objective-C中的布尔类型
- Android之ffmpeg-H264解码-移植ffmpeg中的H264解码部分到Android
- [android] 界面切换的核心方法
- iOS中 block 代理 通知的区别
- DM365 spi_norflash无操作系统启动和sys_bios启动(二)
- Android SD卡读取简单操作
- android之结束所有activity-重点是第二种使用广播结束所有activity
- android之结束所有的activity-Intent.FLAG_ACTIVITY_CLEAR_TOP详细-结束所有activity方法
- swift 之func method 的声明和使用
- android 自定义View 仪表盘 DashboardView 的实现
- Android文件读取简单操作
- 浅谈Android中的线程
- Android Service与Activity之间通信的几种方式
- 文件读取
- Activity的启动方式
- Android消息机制入门