当前位置: 首页 > 知识库问答 >
问题:

在Tkinter中标记出框的文本

甄阳朔
2023-03-14

我有以下问题。我用tkinter中的滚动条创建了一个框架。框架有一个标签,它从一个json文件中获取信息并加载到那里。代码如下:

    second_frame = Frame(canvas)
    
    canvas.create_window((0,0), window=second_frame, anchor='nw')

    label = Label(second_frame, text=str(info), anchor='e', justify=LEFT)
    label.pack()

问题是,当一个句子太长的时候,它就会出框,这很奇怪,因为我以为这些标签有一个自动系统来检测它什么时候出框。这里有一个例子:

程序从json文件中获取以下文本:

"\nThis is Matt\nIf I press enter, everything is fine.\nBut if I don't enter and make this sentence too long, the text will get out of the frame.\n"

我做错了什么?提前道谢!

共有1个答案

井斌斌
2023-03-14

如果您想使画布和框架扩展以适应内部的小部件,请尝试以下操作:

import tkinter as tk
import string

def resize_canvas(event):
    # Get the new width
    new_width = event.width
    # You can use `new_width = max(new_width, 400)` to make the min width 400
    # Change the canvas' width
    canvas.config(width=new_width)

root = tk.Tk()

canvas = tk.Canvas(root, width=200)
canvas.pack()

second_frame = tk.Frame(canvas)
# Bind to the frame being resized
second_frame.bind("<Configure>", resize_canvas)
canvas.create_window((0, 0), window=second_frame, anchor="nw")

label = tk.Label(second_frame, text=string.ascii_letters*2, justify="left")
label.pack()

root.mainloop()

这将绑定到正在调整大小的框架,并相应地更改画布的宽度

 类似资料:
  • 主要内容:基本属性,基本方法,Index文本索引,Tag文本标签,Mark文本标记Text 文本控件是 Tkinter 中经常使用的控件,与 Entry 控件相比,Text 控件用于显示和编辑多行文本,而 Entry 控件则适合处理单行文本。 Text 控件类似 HTML 中的 标签,允许用户以不同的样式、属性来显示和编辑文本,它可以包含纯文本或者格式化文本,同时支持嵌入图片、显示超链接以及带有 CSS 格式的 HTML 等。Text 控件的有很多的适用场景,比如显示某个产品的

  • 问题内容: 我创建了一个固定大小的框架,现在我想在上面添加一些标签和其他小部件。但是我观察到,一旦我在该框架上添加新的小部件,其属性即不受尊重,即大小和默认的背景色设置不受尊重。 因此,在上面的示例中,如果我注释掉第4行和第6行,则可以看到具有蓝色背景色的固定大小的帧。我的要求是我想用这种颜色在此框架上添加其他一些小部件。 问题答案: 关于宽度和高度不被接受,但对于背景颜色,您是正确的。背景颜色不

  • 是否有可能获得嵌套圆角矩形表示每个分组的效果? 例如,在html sourcecode中 看起来应该是这样的: 理想情况下,它可以以图形方式处理20个嵌套级别。使用span标记而不是使用div或其他东西是很重要的。

  • 我正在写一个chrome扩展,它将改变屏幕上某些单词的颜色。我很难找到符合我需要的文本,然后准确地将它包装成一个跨度。html中的同一个单词通常会在页面的其他位置被替换,从而使链接和样式变得毫无用处。 我的示例代码如下:

  • 对于以下超文本标记语言: 我们可以将第一行与这个xpath匹配-- 我们无法将第2行与此xpath匹配-- BR标记正在运行。Selenium IDE的“Select”功能可以获取DIV标记xpath,但不能深入到它所包含的文本中。 有什么建议吗?

  • 我想选择强标签内的文本,但不在其下的div。。。 有没有可能直接与jsoup合作? 我的选择尝试(不工作,选择强标签内的完整内容): HTML: