Russian Qt Forum
Ноябрь 21, 2024, 21:09 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1] 2   Вниз
  Печать  
Автор Тема: QSound::isFinished() - неоднозначность или так и должно быть?!  (Прочитано 8892 раз)
sunjob
Новичок

Offline Offline

Сообщений: 29


Просмотр профиля
« : Февраль 01, 2022, 09:20 »

Цитировать
конспект:
Шлее М. Qt4.5 "Профессиональное программирование на C++" 2010
Глава 27, Звук - стр. 443

Если вам вдруг потребуется узнать, было ли закончено проигрывание до конца
или оно было прервано, то можно вызвать метод
QSound::isFinished(),
кот. вернет true в том случае, если проигрывание было выполнено до конца,
или false, если оно было остановлено. Если же воспроизведение продолжается, то метод isFinished() () вернет значение false.
т.е.
Код:
QSound::isFinished() - возвращает
true  - проигрывание было выполнено до конца
false - проигрывание было остановлено
false - проигрывание продолжается

почему-бы не сделать как во "всех нормальных реализациях"? :о)

Код:
0 - проигрывание было выполнено до конца
1 - проигрывание было остановлено
2 - проигрывание продолжается
4 - blah-blah-balh

ну это так, мымсли вслух... :о)
Записан
PimenS
Крякер
****
Offline Offline

Сообщений: 371


Просмотр профиля
« Ответ #1 : Февраль 01, 2022, 11:13 »

А смысл писать на старых Qt?

Цитировать
We have also removed the deprecated QSound class.

Нет больше этого класса. А у нового QSoundEffect есть:

Цитировать
isLoaded() const : bool
isMuted() const : bool
isPlaying() const : bool
Записан
sunjob
Новичок

Offline Offline

Сообщений: 29


Просмотр профиля
« Ответ #2 : Февраль 01, 2022, 18:28 »

А смысл писать на старых Qt?
Цитировать
slackware 12.2
qt-4.7.4/4.8.7

Записан
PimenS
Крякер
****
Offline Offline

Сообщений: 371


Просмотр профиля
« Ответ #3 : Февраль 01, 2022, 19:22 »

почему-бы не сделать как во "всех нормальных реализациях"? :о)

Вы хотите чтобы было как в "нормальных", но не хотите использовать версию где это сделано. Вам не кажется это странным?

Хотя вы и не ответили о смысле использования ПО 15-летней давности, но если уж вам сильно это надо, то сделайте сами все что вы хотите.
Исходники в открытом доступе.
Записан
sunjob
Новичок

Offline Offline

Сообщений: 29


Просмотр профиля
« Ответ #4 : Февраль 01, 2022, 20:27 »

Цитировать
Хотя вы и не ответили
попробуем еще раз, дубль два

slackware 12.2
qt-4.7.4/4.8.7

если нужны пояснения, то я сделаю, только скажите, что не понятно?!

Цитировать
но если уж вам сильно это надо, то сделайте сами все что вы хотите
мне это никак не надо
Цитировать
ну это так, мымсли вслух...
вопрос касался того, что "почему изначально не было сделано правильно"? ведь это сразу понятно из логики, которая, совсем не логична?! ЭТО БЫЛО ЗАЛОЖЕНО В РЕЛИЗ+ОБНОВЛЕНИЕ!
Код:
QSound::isFinished() - возвращает
true  - проигрывание было выполнено до конца
false - проигрывание было остановлено
false - проигрывание продолжается
это более чем непонятно и неправильно

Цитировать
то сделайте сами все что вы хотите. Исходники в открытом доступе
аргументы по теме все?!

давайте еще раз?! если по теме, обсудим, если нет... не обсудим! :о)

« Последнее редактирование: Февраль 01, 2022, 20:28 от sunjob » Записан
tux
Global Moderator
Бывалый
*****
Offline Offline

Сообщений: 404



Просмотр профиля
« Ответ #5 : Февраль 01, 2022, 20:49 »

А что тут обсуждать? Либо вы используете современное, либо своими руками бодаетесь со старым. В опенсорс мире никто никому ничего не обязан.
Хотя, если хотите, могут и за деньги собрать, тут каждый сам себе решает. Просто так тратить своё время дураков мало...
Записан

PimenS
Крякер
****
Offline Offline

Сообщений: 371


Просмотр профиля
« Ответ #6 : Февраль 01, 2022, 20:52 »

давайте еще раз?! если по теме, обсудим, если нет... не обсудим! :о)

Я понять не могу, вы чего хотите? Чтобы кто-то на форуме вам ответил, почему Trolltech решило не делать того что вам кажется правильным? Тогда вам как минимум нужно задавать эти вопросы на официальном форуме Qt.
Записан
sunjob
Новичок

Offline Offline

Сообщений: 29


Просмотр профиля
« Ответ #7 : Февраль 01, 2022, 21:01 »

Цитировать
ну это так, мымсли вслух...
т.е. предложение к обсуждению... не хотите не надо, о чем разовор?! :о)

p.s. простите, господа, что вы так напряглись?!
вы тему топика плохо прочитали или понять не смогли прочитанного?! :о)
неоднозначность или так и должно быть?!

всем спокойной ночи, пусть вам присниться розовый слоненок! баю-бай... :о)

всем спасибо! Улыбающийся
« Последнее редактирование: Февраль 01, 2022, 21:17 от sunjob » Записан
tux
Global Moderator
Бывалый
*****
Offline Offline

Сообщений: 404



Просмотр профиля
« Ответ #8 : Февраль 01, 2022, 21:08 »

вы тему топика плохо прочитали или понять не смогли прочитанного?! :о)
неоднозначность или так и должно быть?!
Ну, можно порассуждать. Если раньше они не разделяли на паузу и останов, значит НЕ считали нужным так делать. Разработчики.
Потом решили разделить - опять же разработчики.
Уже выше сказали - личные хотелки лучше задавать на специализированном форуме. Здесь могут помочь решить проблему, но угадывать мысли и задумки разрабочиков - это вам на другой форум, однозначно. Улыбающийся
Записан

sunjob
Новичок

Offline Offline

Сообщений: 29


Просмотр профиля
« Ответ #9 : Февраль 01, 2022, 21:19 »

Цитировать
личные хотелки
вопрос темы разве похож на личные хотелки?! Улыбающийся
ладно, заметано!
« Последнее редактирование: Февраль 01, 2022, 21:22 от sunjob » Записан
tux
Global Moderator
Бывалый
*****
Offline Offline

Сообщений: 404



Просмотр профиля
« Ответ #10 : Февраль 01, 2022, 21:29 »

Это именно "личные хотелки". Тогда так было сделано. И задокументировано. Сейчас сделано по другому. И тоже задокументировано.
Не в тему - в своё время KDE точно так-же "сделал всё неправильно" в версии 4. Очень многим не понравилось. И гневные письма были и шум на форумах. А потом кто-то взял и сделал форк KDE 3.5, который живёт до сих пор.
Я к тому, что в прошлом ошибки бывают. Или "неоднозначнеости". И они, возможно, исправляются на то, что лично вам кажется правильным и "нормальным". Или не исправляются. Но - есть исходники, всё можно исправить по своему. Улыбающийся
Записан

sunjob
Новичок

Offline Offline

Сообщений: 29


Просмотр профиля
« Ответ #11 : Февраль 01, 2022, 21:48 »

Цитировать
форк KDE 3.5
который TDE? он, к сожалению, обратно несовсестим, и в нем очень много "добавленных" косяков... которые пополняются с к.релизом и не исправляются... ну а так, да, живет :о)

Цитировать
Это именно "личные хотелки"
ребенок прогуливается с мамой, видит грузовик с помятой крышей и спрашивает
- мам, а что это с крышей у машинки?!
на что получается ответ
- купи эту машину и отремонтируй! покажи дяденьке как должно быть!

ай да мама, ай да молодец! на всю жизнь зарядила ребенка энергией и безграничным желанием не задавать вопросов :о)))
« Последнее редактирование: Февраль 01, 2022, 22:09 от sunjob » Записан
tux
Global Moderator
Бывалый
*****
Offline Offline

Сообщений: 404



Просмотр профиля
« Ответ #12 : Февраль 01, 2022, 22:29 »

ай да мама, ай да молодец! на всю жизнь зарядила ребенка энергией и безграничным желанием не задавать вопросов :о)))
Думаю, что ответ мамы в стиле: "Вот вырастешь, купишь себе СТО и будешь деньги делать на таких машинках. А пока - на машинке просто помята крыша." слишком сложен и вызовет 100500 вопросов у малыша Улыбающийся
Записан

Igors
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 11445


Просмотр профиля
« Ответ #13 : Февраль 02, 2022, 07:52 »

Код:
QSound::isFinished() - возвращает
true  - проигрывание было выполнено до конца
false - проигрывание было остановлено
false - проигрывание продолжается
это более чем непонятно и неправильно
Никогда не работал с QSound, но не вижу тут ничего ни непонятного ни неправильного. Музыка играет или нет? Да или Нет? Другие подходы возможны, напр добавить методы isPausing (еще играет но скоро нет) и/или isStarting (еще нет но скоро). Можно и метод типа getState(). Но все имеет свои минусы, во всяком случае в простом (и четком) isFinished нет ничего плохого.

Ну и изучать подробности устаревшей матчасти - никому не нужно. За время что Вы потратили на написание постов - вполне можно собрать современный Qt и не раздражать людей "конспектом 4.8". А если этот барьер (сборка) Вам непосилен - то предлагать "что-то обсудить" еще рано.
Записан
sunjob
Новичок

Offline Offline

Сообщений: 29


Просмотр профиля
« Ответ #14 : Февраль 02, 2022, 12:55 »

Цитировать
не раздражать людей
уважаемый, Igors!
раздраженые тут только вы(у вас что-то случилось?! не переживайте, улыбнитесь зеркалу...)
ну а мы тут на полном раслабоне, общаемся, балагурим! подключайтесь?! :о)
« Последнее редактирование: Февраль 02, 2022, 16:45 от sunjob » Записан
Страниц: [1] 2   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.055 секунд. Запросов: 23.