在 python 的 tkinter 中,我怎样才能制作一个标签,这样你就可以用鼠标选择文本?

新手上路,请多包涵

在 python 的 tkinter 界面中,是否有一个配置选项会更改标签,以便您可以选择标签中的文本,然后将其复制到剪贴板?

编辑:

您将如何修改这个“hello world”应用程序以提供此类功能?

 from Tkinter import *

master = Tk()

w = Label(master, text="Hello, world!")
w.pack()

mainloop()

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

阅读 487
2 个回答

最简单的方法是使用高度为 1 行的禁用文本小部件:

 from Tkinter import *

master = Tk()

w = Text(master, height=1, borderwidth=0)
w.insert(1.0, "Hello, world!")
w.pack()

w.configure(state="disabled")

# if tkinter is 8.5 or above you'll want the selection background
# to appear like it does when the widget is activated
# comment this out for older versions of Tkinter
w.configure(inactiveselectbackground=w.cget("selectbackground"))

mainloop()

您可以以类似的方式使用条目小部件。

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

对上面的代码做了一些修改:

 from tkinter import *

master = Tk()

w = Text(master, height=1)
w.insert(1.0, "Hello, world!")
w.pack()

# if tkinter is 8.5 or above you'll want the selection background
# to appear like it does when the widget is activated
# comment this out for older versions of Tkinter
w.configure(bg=master.cget('bg'), relief="flat")

w.configure(state="disabled")

mainloop()

浮雕需要是平的,以使其看起来像显示器的普通部分。 :)

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

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