zoukankan      html  css  js  c++  java
  • Duilib + wke 设置wke背景透明

    WkeWebKit.cpp 新增 wkeSetTransparent(m_pWebView, true);

    void CWkeWebkitUI::DoInit()
    {
    	CControlUI::DoInit();
    	// 设置UA
    	wkeSetUserAgent(m_pWebView, "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2228.0 Safari/537.36");
    	// 设置名称
    	wkeSetName(m_pWebView, T2ANSI(GetName()).c_str());
    	// 设置窗口透明
    	wkeSetTransparent(m_pWebView, true);
    	// 启动定时器
    	SetTimer(EVENT_TICK_TIEMER_ID, 30);
    	// 初始化后回调接口
    	wkeOnTitleChanged(m_pWebView, OnWkeTitleChanged, this);
    	wkeOnURLChanged(m_pWebView, OnWkeURLChanged, this);
    	wkeOnNavigation(m_pWebView, OnWkeNavigation, this);
    	wkeOnCreateView(m_pWebView, OnWkeCreateView, this);
    	wkeOnDocumentReady(m_pWebView, OnWkeDocumentReady, this);
    	wkeOnLoadingFinish(m_pWebView, OnWkeLoadingFinish, this);
    }
    
    // 以及 void CWkeWebkitUI::DoPaint(HDC hDC, const RECT& rcPaint) 中
    // ::BitBlt(hDC, m_RendData.rt.left, m_RendData.rt.top, m_RendData.rt.right - m_RendData.rt.left, m_RendData.rt.bottom - m_RendData.rt.top, m_RendData.hDC, 0, 0, SRCCOPY);
    // 修改为
    BLENDFUNCTION bf = { AC_SRC_OVER, 0, 0xFF, AC_SRC_ALPHA };
    ::AlphaBlend(hDC, m_RendData.rt.left, m_RendData.rt.top, m_RendData.rt.right - m_RendData.rt.left, m_RendData.rt.bottom - m_RendData.rt.top, m_RendData.hDC, 0, 0, m_RendData.rt.right - m_RendData.rt.left, m_RendData.rt.bottom - m_RendData.rt.top, bf);
    否则会出现wke窗口透过程序窗口直接看到桌面
    
    
  • 相关阅读:
    有效提高生产力的8个贴士
    如何提高团队编程水平
    PHPCMS V9使用中的一些心得体会
    2012全球SEO行业调查报告
    盘点SEO和SEM的优劣势
    DEDECMS 添加栏目图片
    2013年中国500强排行榜(公司名单及网址)
    十大淘宝搜索作弊行为
    利用curl抓取远程页面内容
    新浪,腾讯,淘宝,人人登陆
  • 原文地址:https://www.cnblogs.com/jkcx/p/9154675.html
Copyright © 2011-2022 走看看