【问题标题】:Python Tkinter text widget index acting weirdPython Tkinter 文本小部件索引表现得很奇怪
【发布时间】:2014-11-05 17:20:27
【问题描述】:

我正在使用 Tkinter,并且我正在使用将换行设置为 WORD 的文本小部件。如果您仍在键入单词,它会在单词结束时将其换行。但是当它这样做时,行索引保持为 1,直到您按下回车键。什么时候应该是 2,因为它是第二行。

有人知道为什么会这样吗? 或者 如何解决?

【问题讨论】:

  • 请发布操作系统、Python 版本、tk 版本(最好是补丁级别,显示在 Idle 的帮助/关于对话框中)以及您用于观察此行为的代码和过程。

标签: python indexing tkinter text-widget


【解决方案1】:

这就是 tkinter 文本小部件的工作方式。索引值基于逻辑行——以换行符结尾的行。即使该行可能在屏幕上可视地换行,索引也不会从 1.x 切换到 2.x 直到第一个换行符。

请注意,在计算相对于其他索引的索引时,您可以选择按逻辑行或显示行来计算行数。例如,相对索引 "1.0 + 2 display lines" 可能会导致与 "1.0 + 2 lines" 不同的答案,具体取决于文本是否被换行。

【讨论】:

  • 我尝试使用插入“\n”。强制一个新的行索引,但它不起作用。有没有办法强制结束行,它将改变行索引行?
  • 插入“\n”就是你的做法。
  • 我已经厌倦了,但它并没有改变行索引。
  • @0Cool:你肯定做错了什么,但由于我们看不到那段代码,我们无能为力。
  • 我可以向您展示我在何处插入“\n”的代码。也许这可以帮助我一些:self.text_field.insert(END, "\n")
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-02-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-01-03
  • 1970-01-01
相关资源
最近更新 更多