大阪市中央区 システムソフトウェア開発会社

営業時間:平日09:15〜18:15
MENU

ラズパイデスクトップでPyQt5入門(18)Drag and Drop

著者:國松亜紗子
公開日:2020/03/21
最終更新日:2020/03/21
カテゴリー:技術情報

こんばんは。國松です。
今回はPyQt5のドラッグ&ドロップを見て行きたいと思います。

参考サイト
ZetCode PyQt5 tutorial
【PythonでGUI】PyQt5 -始めの一歩-

QDrag
QDragはMIMEベースのドラッグアンドドロップデータ転送のサポートを提供します。
ドラッグアンドドロップ操作のほとんどを処理します。
転送されたデータはQMimeDataオブジェクトに含まれています。

1.Simple drag and drop
QLineEditとQPushButtonを作成します。
QLineEditからプレーンテキストをドラッグしてボタンにドロップするとボタンのラベルが変更されます。

2.Drag and drop a button widget
Buttonウィジェットをドラッグアンドドロップしていきます。
マウスの左ボタンをクリック➡コンソールに「press」と表示
マウスの右ボタンでボタンをドラッグアンドドロップで移動できる。

QPushButtonを継承してButtonクラスを作成
mouseMoveEvent()メソッドとmousePressEvent()メソッドを再実装
if e.buttons() != Qt.RightButton:

    return

マウスの右ボタンでのみドラッグアンドドロップを実行できると判断

    上に戻る