我正在尝试制作一个在tkinter python 3.5中有一个大的多行条目的程序,但我不能将文本保存为变量: 我试过了:
from tkinter import *
from tkinter.scrolledtext import ScrolledText
root = Tk()
var = StringVar()
def go():
print(var.get())
big_entry = ScrolledText(root, textvariable=var).pack()
button = Button(root, text='PRINT', command=go).pack()
root.mainloop()
但这似乎不起作用,它告诉我' textvariable'是一个未知的选项,你可以帮助我,但请记住,我只有13岁,并且对编码相对较新,所以保持简单的答案
答案 0 :(得分:1)
ScrolledText
不使用textvariable。
您必须使用insert()
和get()
import tkinter as tk
from tkinter.scrolledtext import ScrolledText
# --- functions ---
def go():
print(st.get(0.0, tk.END))
# --- main ---
root = tk.Tk()
st = ScrolledText(root)
st.pack()
st.insert(0.0, 'Hello World!')
btn = tk.Button(root, text='PRINT', command=go)
btn.pack()
root.mainloop()
答案 1 :(得分:0)
您应输入以下内容:
from tkinter import *
root = Tk()
from tkinter.scrolledtext import ScrolledText
def go():
print(text.get(0.0, END)) #you need to get the current value from line 0 letter 0 to the end
text = ScrolledText(root)
text.pack()
btn = Button(root, text='GO', command=go)
btn.pack()
root.mainloop()
答案 2 :(得分:0)
from tkinter import scrolledtext