Воспроизведение музыки с помощью QT6 и QMediaPlayerC++

Программы на C++. Форум разработчиков
Ответить Пред. темаСлед. тема
Anonymous
 Воспроизведение музыки с помощью QT6 и QMediaPlayer

Сообщение Anonymous »


Я попытался создать класс с объектом QMediaPlayer, а затем в своем файле Game.h создал экземпляр этого класса. Планировалось использовать setContextProperty, чтобы связать его с файлом QML.

Но песня не воспроизводится. Я дважды проверил настройку QMediaPlayer в классе, и все параметры в порядке, а действие кнопки onClick в файле QML кажется хорошим.
//код для Mp3Player.cpp #include "Mp3Player.h" #include Mp3Player::Mp3Player(QMediaPlayer *mp3Player): QObject(), mp3Player(mp3Player) { mp3Player = новый QMediaPlayer(это); mp3Player->setSource(QUrl("qrc:/sounds/international_love.mp3")); } Mp3Player::~Mp3Player() { удалить mp3плеер; } void Mp3Player::setMusic() { mp3Player->играть(); qDebug() нагрузка (URL); QQmlContext *rootContext = engine->rootContext(); rootContext->setContextProperty("classA", &objectClass); rootContext->setContextProperty("classB", &mp3Player); } Игра::~Игра() { удалить двигатель; удалить музыку; } int Game::run() { вернуть exec(); } //код Game.h #прагма один раз #include #include #include "InitClass.h" #include "Mp3Player.h" класс Game: общедоступное QGuiApplication { Q_OBJECT сигналы: публика: Game(int argc, char *argv[]); ~Игра(); интервал запуска(); частный: QQmlApplicationEngine *engine; Объектный класс InitClass; QMediaPlayer *музыка; mp3-плеер mp3-плеер; };
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C++»