Pegar contenido de clipboard en programa externo
Publicado por epicteto (46 intervenciones) el 04/04/2014 20:21:26
Hola
Estoy intentando pegar el contenido del portapapeles, (que he copiado desde python) en un programa externo., concretamente en un campo de texto de un formulario.
El dato a pegar es el contenido de una variable. Lo copio en el clipboard mediante la librería GTK. También podría hacerse con el módulo os y ejecutando xsel, los dos métodos me funcionan
El codigo que uso es este:
Mientras que ejecuto el programa he podido comprobar que el contenido del portapapeles es accesible para python y lo que envío está ahí, pero no desde otros programas. Teóricamente la última línea de código está para eso ... pero a mi no me funciona. No me da ningún error, simplemente no hace lo que debe.
Intento pegar el contenido del clipboard con el menú editar/pegar de varios programas, el click derecho del ratón o directamente ctrl+v en cualquier archivo de texto, pero no pega nada.
¿Alguien puede decirme porqué pasa esto? ¿conocéis otra manera de pasar el contenido de una variable dentro de Python al clipboard y que pueda pegarse por los métodos habituales en otro programa?
Uso Debian Wheezy y Python 2.7
Saludos
Estoy intentando pegar el contenido del portapapeles, (que he copiado desde python) en un programa externo., concretamente en un campo de texto de un formulario.
El dato a pegar es el contenido de una variable. Lo copio en el clipboard mediante la librería GTK. También podría hacerse con el módulo os y ejecutando xsel, los dos métodos me funcionan
El codigo que uso es este:
1
2
3
4
5
6
7
import pygtk
pygtk.require('2.0')
import gtk
clipboard = gtk.clipboard_get()
variable='Texto a incluir'
clipboard.set_text(variable) # manda texto al portapapeles
clipboard.store() # hace el contenido del portapapeles accesible a otras aplicaciones aunque se termine este programa ( Teóricamente !!!!)
Mientras que ejecuto el programa he podido comprobar que el contenido del portapapeles es accesible para python y lo que envío está ahí, pero no desde otros programas. Teóricamente la última línea de código está para eso ... pero a mi no me funciona. No me da ningún error, simplemente no hace lo que debe.
Intento pegar el contenido del clipboard con el menú editar/pegar de varios programas, el click derecho del ratón o directamente ctrl+v en cualquier archivo de texto, pero no pega nada.
¿Alguien puede decirme porqué pasa esto? ¿conocéis otra manera de pasar el contenido de una variable dentro de Python al clipboard y que pueda pegarse por los métodos habituales en otro programa?
Uso Debian Wheezy y Python 2.7
Saludos
Valora esta pregunta


0