• 大小: 13.22MB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2023-07-30
  • 语言: 其他
  • 标签: C++  WebView  miniblink  Qt  

资源简介

基于Qt封装的miniblink版本的浏览器,支持mingw和vc编译器,仅仅支持windows平台

资源截图

代码片段和文件信息

#include “dduiminwebview.h“
#include 
#include 
#include 

///
/// \brief onURLChanged
/// \param webView
/// \param param
/// \param url
///  回调函数 监听网页Url变化的
///
void onURLChanged(wkeWebView webView void* param const wkeString url)
{
    Q_UNUSED(webView)
    DDuiMiniWebView *view = static_cast(param);
    if(view){
        view->urlChanged(QString::fromWCharArray(wkeToStringW(url)));
    }
    qDebug()<}
void titleChangedCallback(wkeWebView webView void* param const wkeString title)
{
    Q_UNUSED(webView)
    DDuiMiniWebView *view = static_cast(param);
    if(view){
        view->titleChanged(QString::fromWCharArray(wkeToStringW(title)));
    }
    qDebug()<tle));
}

bool downloadCallback(wkeWebView webView void* param const char* url)
{
    Q_UNUSED(webView)
    DDuiMiniWebView *view = static_cast(param);
    if(view){
        view->downloadUrl(QString(url));
    }
    qDebug()<    return true;
}

void loadFinishedCallback(wkeWebView webView void* param const wkeString url wkeLoadingResult result const wkeString failedReason)
{
    DDuiMiniWebView *view = static_cast(param);
    if(view){
        bool isOk = (result == WKE_LOADING_SUCCEEDED);
        view->loadFinished(isOkQString::fromWCharArray(wkeToStringW(failedReason)));
    }
    qDebug()<}


DDuiMiniWebView::DDuiMiniWebView(QWidget *parent) : QWidget(parent)
{
    initWke();
}

DDuiMiniWebView::~DDuiMiniWebView()
{
    if(mWindow){
        wkeShutdown();
    }
    qDebug(“~DDuiMiniWebView()“);
}

void DDuiMiniWebView::load(const QUrl &url)
{
    if(!mWindow)return;
    mUrl = url;
    emit loadStarted();
    wkeLoadURL(mWindow url.toString().toUtf8().data());
}
void DDuiMiniWebView::setUrl(const QUrl &url)
{
    if(!mWindow)return;
    mUrl = url;
    if( url.isEmpty() || !url.isValid() ){
        qWarning(“Url is Empty Or is inVaild“);
        return;
    }
    emit loadStarted();
    wkeLoadURL(mWindow url.toString().toUtf8().data());
}

QUrl DDuiMiniWebView::getUrl()
{
    return mUrl;
}

wkeWebView DDuiMiniWebView::getWebView(){
    return mWindow;
}

bool DDuiMiniWebView::goforward()
{
    if(mWindow){
        if(wkeCanGoForward(mWindow)){
            return   wkeGoForward(mWindow);
        }
    }
    return false;
}

bool DDuiMiniWebView::goback()
{
    if(mWindow){
        if(wkeCanGoBack(mWindow)){
            return   wkeGoBack(mWindow);
        }
    }
    return false;
}

void DDuiMiniWebView::setWebFocus(bool focus)
{
    if(mWindow){
        if(focus){
            wkeSetFocus(mWindow);
        }else{
            wkeKillFocus(m

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     文件        4445  2018-09-03 14:43  dduiminwebview.cpp
     文件        1613  2018-09-03 14:35  dduiminwebview.h
     文件         387  2018-09-03 14:58  main.cpp
     文件        1276  2018-09-03 14:32  minWeb.pro
     目录           0  2018-09-03 14:29  miniblink\
     文件    15982080  2018-07-11 15:18  miniblink\miniblink.dll
     文件       52516  2018-07-07 12:47  miniblink\wke.h
     文件    15982080  2018-07-11 15:18  miniblink.dll
     文件        1448  2018-09-03 14:59  miniwebwidget.cpp
     文件         526  2018-09-03 14:37  miniwebwidget.h
     文件        1620  2018-09-03 10:52  miniwebwidget.ui

评论

共有 条评论