Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. QtWebEngine
  4. QWebEngineView with transparent bg always on top
Forum Updated to NodeBB v4.3 + New Features

QWebEngineView with transparent bg always on top

Scheduled Pinned Locked Moved Unsolved QtWebEngine
2 Posts 1 Posters 802 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • J Offline
    J Offline
    jjoorrpp
    wrote on last edited by jjoorrpp
    #1

    What I expect:

    • QWebEngineView with a translucent background

    • QWidget overlay on QWebEngineView

    Codes are:

    int main(int argc, char *argv[])
    {
        QApplication app(argc, argv);
    
        QMainWindow mainWindow;
    
        QWebEngineView view(&mainWindow);
        view.setUrl(QUrl("https://www.qt.io"));
        view.setGeometry(50, 50, 300, 300);
    
        view.page()->setBackgroundColor(Qt::transparent); /// <- #1 make web engine view bg transparent
    
        QWidget overlay(&mainWindow);
        overlay.setGeometry(0, 0, 100, 100);
        overlay.raise(); /// <- #2 make overlay widget on top
        overlay.setStyleSheet("background:red");
    
        mainWindow.resize(400, 400);
        mainWindow.show();
        return app.exec();
    }
    

    Result is:
    d30daae1-1769-43e1-85de-e87aa9556d45-image.png

    Problem is:
    QWebEngineView overlayed on QWidget.
    QWidget cannot overlay on QWebEngineView when QWebEngineView has transparent bg.

    How to solve it?

    ps: problem appears on Windows 10, Qt 5.15.0 with msvc2019

    J 1 Reply Last reply
    0
    • J jjoorrpp

      What I expect:

      • QWebEngineView with a translucent background

      • QWidget overlay on QWebEngineView

      Codes are:

      int main(int argc, char *argv[])
      {
          QApplication app(argc, argv);
      
          QMainWindow mainWindow;
      
          QWebEngineView view(&mainWindow);
          view.setUrl(QUrl("https://www.qt.io"));
          view.setGeometry(50, 50, 300, 300);
      
          view.page()->setBackgroundColor(Qt::transparent); /// <- #1 make web engine view bg transparent
      
          QWidget overlay(&mainWindow);
          overlay.setGeometry(0, 0, 100, 100);
          overlay.raise(); /// <- #2 make overlay widget on top
          overlay.setStyleSheet("background:red");
      
          mainWindow.resize(400, 400);
          mainWindow.show();
          return app.exec();
      }
      

      Result is:
      d30daae1-1769-43e1-85de-e87aa9556d45-image.png

      Problem is:
      QWebEngineView overlayed on QWidget.
      QWidget cannot overlay on QWebEngineView when QWebEngineView has transparent bg.

      How to solve it?

      ps: problem appears on Windows 10, Qt 5.15.0 with msvc2019

      J Offline
      J Offline
      jjoorrpp
      wrote on last edited by
      #2
      This post is deleted!
      1 Reply Last reply
      0

      • Login

      • Login or register to search.
      • First post
        Last post
      0
      • Categories
      • Recent
      • Tags
      • Popular
      • Users
      • Groups
      • Search
      • Get Qt Extensions
      • Unsolved