1

データを作成してQWebViewのデータベースに保存できるWebサイトのURLをロードしています。最初はデータを保存できましたが、ポップアップ ウィンドウを開くことができませんでした。そこで、QWebView.createWindow() メソッドを再実装しました。これで、ポップアップ ウィンドウを開くことができます。しかし、ポップアップを開いた後、私の webview はデータをデータベースに保存する機能を失います。保存ボタンを押した後、ロードまたはリロードしません。私は何を間違っていますか?これが私のコードです:

class MyWebView(QWebView):
    def __init__(self):
        QWebView.__init__(self)
        self.page().windowCloseRequested.connect(self.closeWindow)
        self.page().settings().setAttribute(QWebSettings.JavaEnabled, True)
        self.page().settings().setAttribute(QWebSettings.JavascriptEnabled, True)
        self.page().settings().setAttribute(QWebSettings.JavascriptCanOpenWindows, True)
        self.page().settings().setAttribute(QWebSettings.JavascriptCanCloseWindows, True)
        self.page().settings().setAttribute(QWebSettings.JavascriptCanAccessClipboard, True)

    def createWindow(self, webType):
        self.webview = MyWebView()
        if webType == QWebPage.WebModalDialog:
            self.webview.setWindowModality(Qt.ApplicationModal)
        return self.webview

    def closeWindow(self):
        self.close()
4

0 に答える 0