Шаг 75.
Библиотека PyQt5.
Обработка сигналов и событий. Работа с буфером обмена
На этом шаге мы рассмотрим конструкции, позволяющие организовать работу с буфером обмена.
Помимо технологии drag & drop, для обмена данными между приложениями используется буфер обмена. Одно приложение помещает данные в буфер обмена, а второе приложение (или то же
самое) может их извлечь. Получить ссылку на глобальный объект буфера обмена позволяет статический метод clipboard() класса QApplication:
clipboard = QtWidgets.QApplication.clipboard()
Класс QClipboard поддерживает следующие методы:
- setText (<Текст>) - заносит текст в буфер обмена:
clipboard.setText ("Текст")
- text () - возвращает из буфера обмена текст или пустую строку;
- text (<Тип>) - возвращает кортеж из двух строк: первая хранит текст из буфера обмена,
вторая - название типа. В параметре <Тип> могут быть указаны значения:
- "plain" - простой текст,
- "html" - HTML-код или
- пустая строка - любой тип;
- setImage (<QImage>) - заносит в буфер обмена изображение, представленное экземпляром класса QImage:
clipboard.setImage (QtGui.QImage ("image.jpg"))
- image () - возвращает из буфера обмена изображение, представленное экземпляром класса QImage, или пустой экземпляр этого класса;
- setPixmap (<QPixmap>) - заносит в буфер обмена изображение, представленное экземпляром класса QPixmap:
clipboard.setPixmap (QtGui.QPixmap ("image.jpg") )
- pixmap () - возвращает из буфера обмена изображение, представленное экземпляром класса QPixmap, или пустой экземпляр этого класса;
- setMimeData (<QMimeData>) - позволяет сохранить в буфере данные любого типа, представленные экземпляром класса QMimeData (смотри 73 шаг);
- mimeData ([<Режим>]) - возвращает данные, представленные экземпляром класса QMimeData;
- clear () - очищает буфер обмена.
Отследить изменение состояния буфера обмена позволяет сигнал dataChanged. Назначить обработчик этого сигнала можно так:
QtWidgets.qApp.clipboard().dataChanged.connect(on_change_clipboard)
На следующем шаге мы рассмотрим фильтрацию событий.
Предыдущий шаг
Содержание
Следующий шаг