信息预告:
有一个类似的问题处理同样的问题。
然而,这个并不适用于我(或者我只是不知道如何正确地包含它)。
我最近才开始使用pywebview。
目标:
我想关闭窗口/用HTML中的链接(或按钮)结束程序。
问题:
使用的代码对我不起作用。
可以达到此功能(打印语句填充控制台,
不幸的是,我不知道为什么),但窗口没有关闭。
我刚从pywebview开始,所以我真的不知道该怎么做。
使用页面解决问题:
代码(Python & HTML):
import sys
import webview
class Api:
def __init__(self):
self._window = None
def set_window(self, window):
self._window = window
def destroy(window):
print('Destroying window..')
window.destroy()
print('Destroyed!')
if __name__ == '__main__':
api = Api()
window = webview.create_window('Blackjack', 'index.html', js_api=api, min_size=(1000, 800))
webview.start()<html>
<body>
<main>
<div id="content">
<a>
<div class="block" onclick="exit()">End</div>
</a>
<script>
function exit() { pywebview.api.destroy() }
</script>
</div>
</main>
</body>
</html>发布于 2021-05-20 08:57:13
同时,我找到了一个关闭窗口并退出程序的解决方案。
然而,我得到了一个错误,不幸的是,我不知道为什么。
到目前为止,HTML / JS代码是正确的,不需要任何调整。
在Python脚本中,只能指定def destroy(self)而不是def destroy(window)。
其实很简单,但还是花了我一个月的时间来解决。
发布于 2022-11-10 19:26:43
我认为你必须使用那个set_window方法
if __name__ == '__main__':
api = Api()
window = webview.create_window('Blackjack', 'index.html', js_api=api, min_size=(1000, 800))
api.set_window(window)
webview.start()https://stackoverflow.com/questions/67208598
复制相似问题