0

我希望我在 Text 小部件中插入的文本行每次都有不同的左边距(取决于它们在标题层次结构中的级别,字处理器样式):

# The Solar system
The Solar System[a] consists of the Sun and its planetary system of ...
  ## Inner Planets
  The four inner or terrestrial planets...
    ### Mercury
    Mercury (0.4 AU from the Sun) is the closest planet to the Sun and...

我知道我可以在标签定义http://infohost.nmt.edu/tcc/help/pubs/tkinter/text.html中设置 lmargin1/lmargin2 ,但我不想每次必须增加时都创建一个新标签/减少左边距。

没有办法将它作为 text.insert() 的选项吗?

4

1 回答 1

1

您最好的选择是使用标签。标签既便宜又容易,专门用于解决此类问题。您可以将标签存储在 dict 中并通过缩进级别引用它们,然后您只需在第一次在特定缩进级别添加内容时创建和配置标签。

当然,您也可以使用制表符来缩进一行文本。制表符和使用标签之间的区别在于,使用标签可以在一行文本换行时获得正确的行为,而制表符实际上只是行首的制表符。如果亚麻布缠绕,它将缠绕到左边距而不是行首的位置。

于 2012-12-10T12:10:56.883 回答