QWebPageの背景を透過にする
いらないじゃないかと思われるかも知れないけれども、いるんです。
QGISのプラグウンでレイヤをQWebPageで作って、OpenLayersを食わせることがあるんです。
googleさんにしつこく聞いたところ http://stackoverflow.com/questions/5559524/pyqt4-qtwebkit-background-transparency あたり。
今回は、QWebPageの派生クラスを作って、このクラスは問答無用に背景透過としたいので、コンストラクタ内に書きました。
from PyQt4.QtGui import * from PyQT4.QtWebKit import * class foobar(QWebPage) def __init__(self, parent = None): .... palette = self.palette() # QPalette は PyQt4.QtGui.QPalette # "Qt.transparent" の Qt は PyQt4.QtCore.Qt palette.setBrush(QPalatte.Base, Qt.transparent) self.setPalette(palette)