首页 > 解决方案 > tkinterhtml.HtmlFrame.set_content() 在使用 64 位 Python 时崩溃

问题描述

我的 Windows 机器上安装了 32 位和 64 位 Python。当我使用 32 位运行以下程序时,它可以正常工作,但使用 64 位时,当您单击按钮打开 HTML 页面时,它会崩溃并显示Process finished with exit code -1073741819 (0xC0000005). 注释掉标记的# this line行使其工作,尽管显然它不显示 HTML。我将如何解决这个问题?

import tkinter
from tkinter import ttk

import tkinterhtml


class Gui:
    root = None

    def open_html_page(self):
        local_root = tkinter.Toplevel(self.root)
        local_root.transient(self.root)
        local_root.grab_set()

        big_frame = ttk.Frame(local_root)
        big_frame.pack(fill='both', expand=True)

        html = "<b>This is an <i>HTML</i> page</b>"

        html_frame = tkinterhtml.HtmlFrame(local_root)
        html_frame.pack()
        print(html)
        html_frame.set_content(html) # this line

        local_root.mainloop()

    def launch_gui(self):
        self.root = tkinter.Tk()
        big_frame = ttk.Frame(self.root)
        big_frame.pack(fill='both', expand=True)

        open_html_button = ttk.Button(big_frame, text="Open HTML page", command=self.open_html_page)
        open_html_button.pack()

        self.root.mainloop()


def main():
    Gui().launch_gui()


if __name__ == '__main__':
    main()

标签: pythontkinter

解决方案


推荐阅读