- Kivy 教程
- Kivy - 首頁
- Kivy 基礎
- Kivy - 開始入門
- Kivy - 安裝
- Kivy - 架構
- Kivy - 檔案語法
- Kivy - 應用
- Kivy - Hello World
- Kivy - 應用生命週期
- Kivy - 事件
- Kivy - 屬性
- Kivy - 輸入
- Kivy - 行為
- Kivy 按鈕
- Kivy - 按鈕
- Kivy - 按鈕事件
- Kivy - 按鈕顏色
- Kivy - 按鈕大小
- Kivy - 按鈕位置
- Kivy - 圓形按鈕
- Kivy - 停用按鈕
- Kivy - 圖片按鈕
- Kivy 元件
- Kivy - 元件
- Kivy - 標籤
- Kivy - 文字輸入
- Kivy - 畫布
- Kivy - 線
- Kivy - 複選框
- Kivy - 下拉列表
- Kivy - 視窗
- Kivy - 滾動檢視
- Kivy - 走馬燈
- Kivy - 滑塊
- Kivy - 圖片
- Kivy - 彈出視窗
- Kivy - 開關
- Kivy - 微調器
- Kivy - 分隔器
- Kivy - 進度條
- Kivy - 氣泡
- Kivy - 標籤面板
- Kivy - 散點圖
- Kivy - 手風琴
- Kivy - 檔案選擇器
- Kivy - 顏色拾取器
- Kivy - 程式碼輸入
- Kivy - 模態檢視
- Kivy - 切換按鈕
- Kivy - 相機
- Kivy - 樹檢視
- Kivy - reStructuredText
- Kivy - 操作欄
- Kivy - 播放器
- Kivy - 模板檢視
- Kivy - 虛擬鍵盤
- Kivy - 觸控漣漪
- Kivy - 音訊
- Kivy - 影片
- Kivy - 拼寫
- Kivy - 效果
- Kivy - 輸入記錄器
- Kivy - OpenGL
- Kivy - 文字
- Kivy - 文字標記
- Kivy - 設定
- Kivy 佈局
- Kivy - 佈局
- Kivy - 浮動佈局
- Kivy - 網格佈局
- Kivy - 箱式佈局
- Kivy - 堆疊佈局
- Kivy - 錨點佈局
- Kivy - 相對佈局
- Kivy - 分頁佈局
- Kivy - 回收佈局
- Kivy - 佈局巢狀
- Kivy 高階概念
- Kivy - 配置物件
- Kivy - 圖集
- Kivy - 資料載入器
- Kivy - 快取管理器
- Kivy - 控制檯
- Kivy - 動畫
- Kivy - 多筆劃
- Kivy - 時鐘
- Kivy - SVG
- Kivy - UrlRequest
- Kivy - 剪貼簿
- Kivy - 工廠
- Kivy - 手勢
- Kivy - 語言
- Kivy - 圖形
- Kivy - 繪圖
- Kivy - 打包
- Kivy - Garden
- Kivy - 儲存
- Kivy - 向量
- Kivy - 工具函式
- Kivy - 檢查器
- Kivy - 工具
- Kivy - 日誌記錄器
- Kivy - 幀緩衝區
- Kivy 應用和專案
- Kivy - 繪圖應用
- Kivy - 計算器應用
- Kivy - 計時器應用
- Kivy - 相機處理
- Kivy - 圖片檢視器
- Kivy - 貝塞爾曲線
- Kivy - 畫布壓力測試
- Kivy - 圓形繪製
- Kivy - 元件動畫
- Kivy - 其他
- Kivy 有用資源
- Kivy - 快速指南
- Kivy - 有用資源
- Kivy - 討論
Kivy - 剪貼簿
Kivy框架中的剪貼簿物件可以訪問正在使用的作業系統的剪貼簿。藉助Kivy的剪貼簿物件,可以以程式設計方式執行剪下、複製和貼上操作。
剪貼簿是計算機RAM中的一個臨時緩衝區,大多數作業系統都提供它用於在應用程式內部和應用程式之間進行短期儲存和傳輸。在作業系統中,此剪貼簿是一個全域性物件。大多數作業系統都使用傳統的鍵盤快捷鍵來執行應用程式之間的資料剪下、複製和貼上操作。
通常,不需要透過剪貼簿顯式使用剪下-複製-貼上操作。但是,在某些情況下它可能很有用。
剪貼簿物件定義在“kivy.core.clipboard”模組中。剪貼簿物件可以使用以下方法:
copy() − 將引數data中提供的值複製到當前剪貼簿。如果資料不是字串型別,它將被轉換為字串。
get() − 獲取剪貼簿中的當前資料,如果可能,使用mimetype。不要直接使用此方法。請改用paste方法。
get_types() − 返回支援的mimetype列表。
paste() − 從系統剪貼簿獲取文字並將其返回為可用的字串。
put() − 將資料放入剪貼簿,並附加mimetype。你不應該直接使用此方法。請改用copy方法。
示例
在下面的示例中,我們在BoxLayout中安排了兩個多行文字框和兩個按鈕。COPY按鈕呼叫gettext()方法,該方法將選定的文字從上面的文字框複製到剪貼簿。
def gettext(self, instance): Clipboard.copy(data=self.text1.selection_text)
PASTE按鈕呼叫回撥insert(),該回調在游標位置貼上選定的文字。
def insert(self, instance): txt = Clipboard.paste() print (txt) self.text2.insert_text(txt)
這兩個函式繫結到兩個按鈕:
self.b1=Button(text='COPY') self.b1.bind(on_press=self.gettext) self.b2=Button(text='PASTE') self.b2.bind(on_press=self.insert)
build()方法組裝文字框和按鈕。
以下是此練習的完整程式碼:
from kivy.app import App
from kivy.uix.boxlayout import BoxLayout
from kivy.uix.textinput import TextInput
from kivy.uix.button import Button
from kivy.core.clipboard import Clipboard
from kivy.core.window import Window
Window.size = (720, 400)
class mydemoapp(App):
def gettext(self, instance):
Clipboard.copy(data=self.text1.selection_text)
def insert(self, instance):
txt = Clipboard.paste()
print(txt)
self.text2.insert_text(txt)
def build(self):
main = BoxLayout(orientation='vertical')
self.text1 = TextInput(multiline=True, font_size=32)
btns = BoxLayout(orientation='horizontal')
self.b1 = Button(text='COPY')
self.b1.bind(on_press=self.gettext)
self.b2 = Button(text='PASTE')
self.b2.bind(on_press=self.insert)
self.text2 = TextInput(
multiline=True, font_size=32,
foreground_color=[0, 0, 1, 1]
)
btns.add_widget(self.b1)
btns.add_widget(self.b2)
main.add_widget(self.text1)
main.add_widget(btns)
main.add_widget(self.text2)
return main
mydemoapp().run()
輸出
執行程式時,您將看到兩個文字框。在上面的框中輸入Simple is better than Complex,在下面的框中輸入Complex is Complicated。
然後,選擇子字串better than,然後單擊COPY按鈕將其儲存到剪貼簿。單擊下面框中“Complicated”一詞旁邊的位置,然後單擊PASTE按鈕。剪貼簿上的文字將被插入。