Установить определенный цвет в qt5 webview прозрачным

Я разрабатываю приложение на основе веб-просмотра Qt5, и мне нужно сделать определенный цвет внутри веб-просмотра прозрачным или иметь альфа-канал. Например, веб-страница, загруженная в веб-просмотр, может иметь полноэкранный div с фоновым цветом (в большинстве случаев черным, но может быть и другим цветом). Мне нужно сделать этот цвет (с самим веб-просмотром) полупрозрачным. Все остальные элементы формы заявки должны быть видны через это веб-представление.


person VaMpir    schedule 15.07.2014    source источник


Ответы (1)


Кажется, я понимаю ваш вопрос, вы хотите, чтобы WebView имел полупрозрачный фон (или что-то в этом роде).

Вы можете попробовать удалить фон веб-просмотра, используйте это (источник: https://gist.github.com/anonymous/103126 ):

QPalette palette = ui->webView->palette(); //Get webView palette
palette.setBrush(QPalette::Base, Qt::transparent);
ui->webView->page()->setPalette(palette); //Set transparent palette
ui->webView->setAttribute(Qt::WA_OpaquePaintEvent, false);//Remove opaque

В вашем файле css (в html) используйте это:

<html>
<head>
body {
   background-color: rgba(255, 0, 0, 0.2);//Edit "0.2" to obtain the opacity needed.
}
</head>
<body>
Something...
</body>
</html>
person Guilherme Nascimento    schedule 06.08.2014