Копирование строки из scrolled_window в буфер обмена

1

Я пытаюсь скопировать содержимое строки, отображаемой из дерева, для использования в отдельной программе редактора. Я нашел потенциальное решение с использованием функции Tkinter и clipboard_append(), которая, похоже, работает в исходном скрипте, но не изменяет системный буфер обмена и, таким образом, делает данные доступными для программы редактора. Очевидно, что я что-то упускаю и нуждаюсь, по крайней мере, в нескольких подсказках. Использование pyperclip кажется излишним для моих потребностей, которые просто ищут записи в базе данных MySQL членства с некоторыми 24K строк и копируют одну выбранную строку в программу редактора.

  • 1
    Отображается ли древовидное представление в программе Tkinter? Также для какой ОС это?
  • 0
    Нет, это в scrolled_window, который является частью скрипта, который включает Tkinter, но только для получения доступа к буферу обмена. Ввод данных для запуска поиска - это отдельное окно верхнего уровня, а древовидное представление находится в дочернем scrolled_window. ОС Linux, в частности, xubuntu 16.04.1. С тех пор я обнаружил, что если я вызываю Tk.mainloop (), данные видны внешнему редактору, но тогда я не могу выйти из исходного скрипта (потому что, конечно, mainloop окна Tk не предоставляет никакого контроля чтобы вернуться к окну не-Tk). Я подозреваю, что я пытаюсь смешать яблоки и апельсины здесь!
Показать ещё 4 комментария
Теги:

1 ответ

0

Похоже, что я нашел ответ на https://www.tutorialspoint.com/pygtk/pygtk_clipboard_class.htm в примере на этой странице, и в скрипте потребовалось очень мало кодировок и НЕТ добавленных модулей! Эти три строки сделали трюк при добавлении к моему обратному вызову get_selection:

  self.clipboard = gtk.clipboard_get()
  self.clipboard.set_text(text)
  self.clipboard.store()

Еще раз спасибо за все предложения. Это отличное место для обмена идеями.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню