python - 如何使用 .grid 方法将滚动条添加到 tkinter 文本小部件

标签 python tkinter

我正在尝试为我的文本小部件创建一个滚动条,但是,我似乎无法对滚动条进行网格化(),因此滚动条不会出现在文本小部件上。忽略变量 Quote 中的内容,它只是测试数据。

EventScrollBar= tk.Scrollbar(EventChoice)
EventText=tk.Text(EventChoice,height=25,width=50)
EventText.grid(row=3,column=1,columnspan=5)
EventScrollBar.config(command=EventText.yview)
EventText.config(yscrollcommand=EventScrollBar.set)
Quote=("""
...
wd""")
EventText.insert(tk.END,Quote)
EventText.config(state=tk.DISABLED)

最佳答案

我为您提供两种制作滚动条的方法。

1) 使用tk.Scrollbar

import tkinter as tk

root = tk.Tk()
EventText=tk.Text(root, height=10, width=50)
EventScrollBar= tk.Scrollbar(root, command=EventText.yview, orient="vertical")
EventScrollBar.grid(row=0, column=1, sticky="ns")
EventText.grid(row=0,column=0)
EventText.configure(yscrollcommand=EventScrollBar.set)
Quote=("""Suck\ne\ne\ne\ne\ne\ne\ne\ne\ne\nee\ne\ne\ne\ne\ne\ne\ne\nee\ned\ne\ne\nde\nd\ne\nded\nc\nc\nx\nc\nx\nc\nzc\ns\nds\nx\nwd\ns\nd\nwd""")
EventText.insert(tk.END,Quote)

root.mainloop()

2)使用ScrolledText

import tkinter as tk
from tkinter import scrolledtext

root = tk.Tk()
Quote=("""Suck\ne\ne\ne\ne\ne\ne\ne\ne\ne\nee\ne\ne\ne\ne\ne\ne\ne\nee\ned\ne\ne\nde\nd\ne\nded\nc\nc\nx\nc\nx\nc\nzc\ns\nds\nx\nwd\ns\nd\nwd""")
EventText = scrolledtext.ScrolledText(root, height=10, width=50)
EventText.insert("end", Quote)
EventText.grid(row=0, column=0)

root.mainloop()

enter image description here

关于python - 如何使用 .grid 方法将滚动条添加到 tkinter 文本小部件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53306046/

相关文章:

python - 无法在列表中更改列表的内容。谁能解释为什么?

Python 在 Windows 7 上启动非常慢

tkinter - 按键时关闭 tk 窗口

python - 如何在 Tkinter 中显示字符串变量?

python - 类型错误 : generatecode() takes 0 positional arguments but 1 was given

python - 为什么两个 tkinter 条目使用相同的编号?

python - Django 使用序列化器在 Restframework 中进行 API 调用的一对多关系

python - 尝试将多个值附加到字典中的键时,Python 中出现属性错误

python - 如何将方程绘制到具有重新定义索引的数组中

python - 如何修复按钮命令在代码运行后立即执行的问题?