from tkinter import *
r=Tk()
r.title('try')
scrollbary=Scrollbar(r,orient=VERTICAL)
scrollbarx=Scrollbar(r,orient=HORIZONTAL)
text=Text(r,wrap=NONE)
scrollbary.pack(side=RIGHT,fill=Y)
scrollbarx.pack(side=BOTTOM,fill=X)
text.pack(side=LEFT,padx=10,pady=10)
scrollbary.config(command=text.yview)
scrollbarx.config(command=text.xview)
text.config(yscrollcommand=scrollbary.set)
text.config(xscrollcommand=scrollbarx.set)
r.mainloop()
运行是这样的
这没得办法解决,因为你当前的文本框不需要滚动范围,滚动条的滚动块自然不出现。你可以认为是tkinter的特性。
可行的解决办法就是你自己绘制一个滚动条,你可以查看我的TinUI(基于tkinter的绘制型组件框架)专栏。
TinUI文本框:https://blog.csdn.net/tinga_kilin/article/details/122827474
TinUI绘制滚动条:https://blog.csdn.net/tinga_kilin/article/details/122821064
TinUI可以通过pip从pypi安装。其中,你可以使用BasicTinUI类以及绘制文本框时添加scroll参数来完成这个效果。无论在哪,TinUI的滚动条是windows11风格的。
确实同楼上所说。如果非要可以换个简单点的思路,没有内容或者内容行数不够计算需要填充多少换行符,然后换行符拼接到显示内容