Pythonでメールフォームを大量集計する技の極意 コピペ&クリックでExcelデータに早変わり
まずは、画面を作る部分と、クリップボードからテキストをコピーする部分を説明します。
画面を作成しているのは58行目以降で、ラベル・テキストボックス・ボタンを1つずつ配置しています。
注目すべきは、67行目のbind メソッドです。ボタンと違い、通常はテキストボックスをクリックしたときに何かをさせることはできないのですが、bindメソッドによってクリック時にpasteMsg関数を呼び出すように設定しています。
引数にある"<Button-1>"はマウスの左ボタンを表しており、ホイールボタンと紐付けたい場合は"<Button-2>"、右ボタンと紐付けたい場合は"<Button-3>"と指定します。
なお、bindメソッドはマウスのボタンだけでなく、キーと紐付けることもできます。例えば"<Return>"や"<Tab>"と指定すると、EnterキーやTabキーを押したときに関数を呼び出せます。
続いてbindメソッドから呼び出されている、07~10 行目のpasteMsg 関数を見てみましょう。
09行目のdeleteメソッドは、テキストボックスの内容を削除するものです。このメソッドを使うことで、すでにテキストボックスに入力されている内容を手動で削除する手間を省くことができます。
削除した後はテキストを挿入するために、10行目でinsertメソッドを呼び出しています。
このメソッドの第2引数にあるpyperclip.paste()は、pyperclipというパッケージのpaste関数という意味です。この関数を使うことで、テキストボックスをクリックするだけでクリップボードから貼り付けができます。
無料会員登録はこちら
ログインはこちら