Russian Qt Forum

Qt => Вопросы новичков => Тема начата: frefik от Мая 30, 2011, 09:19



Название: Запуск файлов
Отправлено: frefik от Мая 30, 2011, 09:19
Всем привет. Есть данные примерно следующего вида:

C:\movie.avi 12:21- * продолжительность
C:\movie2.avi 07:12
...

Как можно их запускать друг за другом ориентируясь на их длительности.
Извините, если вопрос тривиальный.



Название: Re: Запуск файлов
Отправлено: blood_shadow от Мая 30, 2011, 09:44
если разделитель пробел, делаешь QString::split() с именем файла в качестве разделителя указываешь пробел,
во втором элементе твоего QStringList'а который ты получишь будет продолжительность, далее QString::split()
над этим вторым элементом, и для каждого полученного toInt() далее я думаю ты понял что надо делать


Название: Re: Запуск файлов
Отправлено: frefik от Мая 30, 2011, 09:52
я не правильно наверно выразился в теме, у меня эти данные в QTreeWidget лежат, мне их надо запускать, мой глупый мозг даёт следующий алгоритм:

-берем первую строчку из таблице
-извлекаем из неё имя файла и его продолжительность
-запускаем файл
-берем QTime time; time.start и проверяем на условие приравнивается ли она продолжительности файла, когда условие выполняется закрываем файл. надо как то выждать пока файл закончиться и брать следующую строчку.

проблема в том что я не знаю как это всё "зациклить", взять следующую строчку


если использовать sleep(продолжительность_файла) на сколько это правильно? Скажите хоть что-то я прошу(.


Название: Re: Запуск файлов
Отправлено: blood_shadow от Мая 30, 2011, 10:42
если я правильно понял и тебе надо просто пройтись по всем элементам дерева, то посмотри на QTreeWidgetItemIterator
только будь осторожен это все-таки дерево, не таблица


Название: Re: Запуск файлов
Отправлено: frefik от Мая 30, 2011, 11:11
вопрос не в QTreeWidget(, есть таблица из неё надо взять данные (я знаю как) и по этим данным запуска/завершать файлы, при это что бы запустить следующий файл надо сначала завершить предыдущий, то есть надо ждать пока файл проиграется. помоги если можешь, просто  не могу понять, туплю(