Название: QAxWidget- Media player
Отправлено: Сникерс от Декабрь 08, 2010, 17:25
Доброе время суток господа программисты, обращаюсь к вам с простым вопросом: как открыть в медиа плеере видеофайл лежащий у экзешника проги? Использую следующий код: #include <QAxWidget> PlayerWindow::PlayerWindow(QWidget *parent) : QWidget(parent) { wmp = new QAxWidget; wmp->setControl("{22D6F312-B0F6-11D0-94AB-0080C74C7E95}"); wmp->setProperty("ShowControls", false); wmp->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding); openButton = new QToolButton; openButton->setText(tr("&Open...")); connect(openButton, SIGNAL(clicked()), this, SLOT(openFile())); }
void PlayerWindow::openFile() { QString fileName = QFileDialog::getOpenFileName(this, tr("Select File"), ".", fileFilters); if (!fileName.isEmpty()) wmp->setProperty("FileName", QDir::toNativeSeparators(fileName)); }
Пробовал заменить: void PlayerWindow::openFile() { QString fileName = QFileDialog::getOpenFileName(this, tr("Select File"), ".", fileFilters); if (!fileName.isEmpty()) wmp->setProperty("FileName", QDir::toNativeSeparators(fileName)); } на void PlayerWindow::openFile() { wmp->setProperty("1.avi",QApplication::applicationDirPath() + QDir::separator() + QLatin1String("1.avi")); } Нефига не вышло, в чем я ошибся? И еще один вопрос: connect( wmp, SIGNAL( finished() ),this, SLOT( videoend()) ); Почему то finished() не работает... какой аналог можно придумать кроме таймера, чтобы при окончании видео выдавался сигнал?
Название: Re: QAxWidget- Media player
Отправлено: Сникерс от Декабрь 09, 2010, 17:35
С открытием фала разобрался: void PlayerWindow::openFile() {wmp->setProperty("FileName",QApplication::applicationDirPath() + QDir::separator() + QLatin1String("1.avi")); } А вот с определением конца видео решения пока нет connect( wmp, SIGNAL( finished() ),this, SLOT( videoend()) ); не работает в консоле приложения вылетает: Object::connect: No such signal QAxWidget::finished() Подскажите плз как определить что видео кончилось?
|