Класс QMediaControl
Класс QMediaControl предоставляет базовый интерфейс для управления медиа-сервисами. Подробнее...
Открытые функции
| virtual | ~QMediaControl() |
Защищенные функции
| QMediaControl(QObject *parent = nullptr) |
Макросы
| Q_MEDIA_DECLARE_CONTROL(Class, IId) |
Подробное описание
Управление медиа предоставляет интерфейс к отдельным функциям, предоставляемым медиа-сервисом. Большинство служб реализуют основное управление, которое раскрывает основные функциональные возможности службы, и ряд дополнительных управлений, которые раскрывают любые дополнительные функциональные возможности.
Указатель на реализованное медиа-сервисом управление можно получить, используя член QMediaService::requestControl() объекта QMediaService. Если служба не реализует управление, она вернет вместо этого указатель null.
QMediaPlayerControl *control = qobject_cast<QMediaPlayerControl *>(
mediaService->requestControl("org.qt-project.qt.mediaplayercontrol/5.0")); В качестве альтернативы, если IId управления был объявлен с помощью Q_MEDIA_DECLARE_CONTROL, можно использовать шаблонную версию QMediaService::requestControl(), чтобы запросить службу без явного указания IId или использования qobject_cast().
QMediaPlayerControl *control = mediaService->requestControl<QMediaPlayerControl *>();
Большая часть кода приложения не будет взаимодействовать напрямую с управлениями медиа-службы, вместо этого QMediaObject, владеющий службой, выступает в качестве посредника между одним или несколькими управлениями и приложением.
См. также QMediaService и QMediaObject.
Документация функций-членов
[protected] QMediaControl::QMediaControl(QObject *parent = nullptr)
Конструирует управление медиа с указанным parent.
[virtual] QMediaControl::~QMediaControl()
Удаляет управление медиа.
Документация макросов
Q_MEDIA_DECLARE_CONTROL(Class, IId)
Макрос Q_MEDIA_DECLARE_CONTROL объявляет IId для Class, который наследуется от QMediaControl.
Объявление IId для QMediaControl позволяет запросить экземпляр этого управления из QMediaService::requestControl() без явного указания IId.
QMediaPlayerControl *control = mediaService->requestControl<QMediaPlayerControl *>();
См. также QMediaService::requestControl().
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.14/qmediacontrol.html