【Python GUI tkinterサンプル】クリップボード(clipboard)の値をテキストボックス(ttk.Entry)に反映する
使用するメソッド
clipboard_get()
使い方
・widget.clipboard_get()で現在クリップボードに入っている値を取得できる。
※widget.clipboard_clear()でクリップボードの内容を削除することができる。
※widget.clipboard_append()でクリップボードに値を追加できる。
サンプル画像
inputのテキストボックスの文字列を「Ctrl」+「C」でコピー
pasteボタンを押下すると下のテキストボックスにクリップボードの値が出力される
サンプルコード
from tkinter import *
import tkinter.ttk as ttk
class clipboardSample(ttk.Frame):
def __init__(self, master):
super().__init__(master)
self.pack()
self.inputValue = StringVar(value="Sample")
self.outputValue = StringVar()
self.create_widgets()
def create_widgets(self):
inputframe = ttk.Labelframe(self)
inputframe.pack()
entry = ttk.Entry(inputframe,textvariable=self.inputValue,state="readonly")
entry.pack(side="left")
pasteButton = ttk.Button(inputframe,text="paste",command = self.clipboardCommand)
pasteButton.pack(side="left")
output = ttk.Entry(self,textvariable=self.outputValue,state="readonly")
output.pack()
def clipboardCommand(self):
self.outputValue.set(self.clipboard_get())
if __name__ == '__main__':
master = Tk()
master.geometry("600x400")
master.title("clipboardSample")
clipboardSample(master)
master.mainloop()