Копирование текста из виджета Label в буфер обмена
from tkinter import *
root = Tk()
lbl = Label(root, text='hello world')
btn = Button(root, text='copy')
lbl.grid(row=0, column=0)
btn.grid(row=1, column=0)
root.mainloop()
Мне нужно дополнить программу функцией копирования. Видел копирование из виджета Scrolledtext, но с Label так не выходит. Как копировать текст из Label в буфер обмена?
Ответы (1 шт):
Автор решения: insolor
→ Ссылка
Нужно получить текст из виджета (в данном случае через lbl['text'], если нужно например из Entry - то с помощью метода entry.get()), потом добавить его в буфер обмена с помощью метода root.clipboard_append:
from tkinter import *
root = Tk()
lbl = Label(root, text='hello world')
def copy_to_clipboard():
root.clipboard_clear() # Очистить буфер обмена
root.clipboard_append(lbl['text']) # Добавить текст в буфер обмена
btn = Button(root, text='copy', command=copy_to_clipboard)
lbl.grid(row=0, column=0)
btn.grid(row=1, column=0)
root.mainloop()