结合 HTML 和 Tkinter 文本输入

Combining HTML and Tkinter Text Input

我正在寻找一些帮助来寻找一种方法来构建文本主体,该文本主体可以在用户输入他们的文本以显示在条目中时在 HTML 文档中实现。我已经想出了以下关于如何执行浏览器以在单击按钮并显示 HTML 字符串时在新的 window 中打开。但是,我遇到的问题是获取 wbEntry 变量内的用户输入,以使用 'message' 输出的 HTML 字符串运行。我正在查看 lambda 用作 wbbutton 中的命令,但不确定这是否是寻找解决方案的方向。

from tkinter import *
import webbrowser

def wbbrowser():
    f = open('index.html','w')
    message = "<html><head></head><body><p>This is a test</p></body</html>"
    f.write(message)
    f.close()
    webbrowser.open_new_tab('index.html')


wbGui = Tk()
source = StringVar()


wbGui.geometry('450x450+500+300')
wbGui.title('Web Browser')

wblabel = Label(wbGui,text='Type Your Text Below').pack()

wbbutton = Button(wbGui,text="Open Browser",command = wbbrowser).pack()

wbEntry = Entry(wbGui,textvariable=source).pack()

我在 Windows 7 上使用 Python 3.5 和 Tkinter。上面的代码不适用于我的 Mac OSX,因为这需要我的 wbbrowser 功能的不同设置。任何帮助将不胜感激。

由于您将 StringVar 与条目小部件相关联,因此您需要做的就是在将变量插入消息之前从变量中获取值。

def wbbrowser():
    ...
    text = source.get()
    message = "<html><head></head><body><p>%s</p></body</html>" % text
    ...