Python, Kivy: 如何一键复制到剪贴板?
Python, Kivy: How to copy to clipboard on the click of a button?
我想通过单击按钮将文本复制到剪贴板。示例代码:
.py
from kivy.app import App
from kivy.uix.screenmanager import Screen, ScreenManager
sm = ScreenManager()
class main(Screen):
def generate(self):
text = 'Testing123456'
#copy to clipboard
class MyApp(App):
def build(self):
sm.add_widget(main(name='main'))
return sm
if __name__ == '__main__':
MyApp().run()
.kv
<main>
FloatLayout:
Button:
text: 'Generate'
font_size: (self.height - len(self.text) * 2) / 2
size_hint: 0.5, 0.2
pos_hint: {'x': 0.25, 'y': 0.1}
on_release: root.generate()
我的代码还有很多,但我决定将其删除,因为那样会偏离主题。如果您需要我的其余代码,请随时告诉我。
感谢帮助!!
你没有解释你的问题是什么,但你有所有的文档:Clipboard
from kivy.core.clipboard import Clipboard
class main(Screen):
def generate(self):
text = 'Testing123456'
Clipboard.copy(text)
这对我有用 Linux。
如果您正在处理 Windows OS,您可以创建一个 嵌套函数 与 OS 模块 调用 cmd 函数:
import os
def addToClipBoard(text):
command = 'echo ' + text.strip() + '| clip'
os.system(command)
a = input("Ingrese el dato:")
addToClipBoard(a)
您可以使用 Kivy
将此功能添加到按钮的 事件检测器
我想通过单击按钮将文本复制到剪贴板。示例代码:
.py
from kivy.app import App
from kivy.uix.screenmanager import Screen, ScreenManager
sm = ScreenManager()
class main(Screen):
def generate(self):
text = 'Testing123456'
#copy to clipboard
class MyApp(App):
def build(self):
sm.add_widget(main(name='main'))
return sm
if __name__ == '__main__':
MyApp().run()
.kv
<main>
FloatLayout:
Button:
text: 'Generate'
font_size: (self.height - len(self.text) * 2) / 2
size_hint: 0.5, 0.2
pos_hint: {'x': 0.25, 'y': 0.1}
on_release: root.generate()
我的代码还有很多,但我决定将其删除,因为那样会偏离主题。如果您需要我的其余代码,请随时告诉我。
感谢帮助!!
你没有解释你的问题是什么,但你有所有的文档:Clipboard
from kivy.core.clipboard import Clipboard
class main(Screen):
def generate(self):
text = 'Testing123456'
Clipboard.copy(text)
这对我有用 Linux。
如果您正在处理 Windows OS,您可以创建一个 嵌套函数 与 OS 模块 调用 cmd 函数:
import os
def addToClipBoard(text):
command = 'echo ' + text.strip() + '| clip'
os.system(command)
a = input("Ingrese el dato:")
addToClipBoard(a)
您可以使用 Kivy
将此功能添加到按钮的 事件检测器