了解 Tkinter 的 Entry 小部件中的插入方法

新手上路,请多包涵

我一直在学习关于 Python 的 Tkinter 的教程,我目前正在使用 Entry 小部件并且刚刚遇到了插入方法。我了解该方法的作用(使默认字符串出现在文本输入字段中),但我没有得到该方法的第一个参数,据我所知,它是字符串应该开始的索引。现在混乱来了。玩弄它时,为 index 参数提供不同的值,每次我运行它时,文本都会出现在同一个位置(最开始)。因此,据我所知,我要么做错了什么,要么误解了文档。这是我的代码片段:

  e1 = Entry(master)
 e1.insert(0,"First Name")

每当我运行它时,天气索引为 0、10 或 100,文本“名字”总是出现在文本字段的最开头

原文由 Micky Scandal 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 503
1 个回答

首先,“使默认字符串出现”这一说法并不完全正确。虽然它可用于插入默认文本,但更正确的描述是将其简单描述为插入文本、句点。它可以是默认文本、替换文本、附加文本,任何你想要的。

第一个字符之前的任何索引都被视为 0(零)。最后一个字符之后的任何索引都被视为结束。当您向空的条目小部件中插入内容时,每个索引都被视为 0。因此,索引最适用于将文本插入现有文本的某处。

例如:

 e1 = Entry(master)
e1.insert(0, "hello")
e1.insert("end", "world")
e1.insert(5, ", ")

作为应用程序程序员,您几乎永远不会将 insert 方法与索引 0(零)或“结束”或“插入”以外的任何内容一起使用。但是,当您尝试添加高级功能(例如:拼写检查、自动完成等)时,您会发现该索引非常有用。

原文由 Bryan Oakley 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题