QMediaControl Class

The QMediaControl class provides a base interface for media service controls. 更多...

公有函数

  • 32 个公有函数继承自 QObject

受保护的函数

QMediaControl(QObject *parent = Q_NULLPTR)
  • 9 个受保护的函数继承自 QObject

Macros

其他继承的成员

  • 1 个属性继承自 QObject
  • 1 个公有槽函数继承自 QObject
  • 2 个信号继承自 QObject
  • 1 个公有变量继承自 QObject
  • 10 个静态公有成员继承自 QObject
  • 2 个受保护的变量继承自 QObject

详细描述

The QMediaControl class provides a base interface for media service controls.

Media controls provide an interface to individual features provided by a media service. Most services implement a principal control which exposes the core functionality of the service and a number of optional controls which expose any additional functionality.

A pointer to a control implemented by a media service can be obtained using the QMediaService::requestControl() member of QMediaService. If the service doesn't implement a control it will instead return a null pointer.


  QMediaPlayerControl *control = qobject_cast<QMediaPlayerControl *>(
          mediaService->requestControl("org.qt-project.qt.mediaplayercontrol/5.0"));

Alternatively if the IId of the control has been declared using Q_MEDIA_DECLARE_CONTROL the template version of QMediaService::requestControl() can be used to request the service without explicitly passing the IId or using qobject_cast().


  QMediaPlayerControl *control = mediaService->requestControl<QMediaPlayerControl *>();

Most application code will not interface directly with a media service's controls, instead the QMediaObject which owns the service acts as an intermediary between one or more controls and the application.

参见 QMediaService and QMediaObject.

成员函数

[protected] QMediaControl::QMediaControl(QObject *parent = Q_NULLPTR)

Constructs a media control with the given parent.

QMediaControl::~QMediaControl()

Destroys a media control.

Q_MEDIA_DECLARE_CONTROL(Class, IId)

The Q_MEDIA_DECLARE_CONTROL macro declares an IId for a Class that inherits from QMediaControl.

Declaring an IId for a QMediaControl allows an instance of that control to be requested from QMediaService::requestControl() without explicitly passing the IId.


  QMediaPlayerControl *control = mediaService->requestControl<QMediaPlayerControl *>();

参见 QMediaService::requestControl().