Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

advtrackbar [D7]


artemka2008 ©   (2013-10-01 13:33:00) 

помогите решить проблему, ползунок advtrackbar уходит влево, когда воспроизведение доходит до 1:10
проверял его работу с TMediaPlayer, никаких проблем не было, а с bass.dll выходит так


artemka2008   (2013-10-02 15:01:00) [1]

две строчки потому что проверял разные варианты и забыл удалить.
стандартный ttrackbar работает без проблем, и если использовать tmediaplayer, то тоже все отлично, перемотка, показ позиции и тд, но если использовать bass.dll , то ползунок уходит влево на определенном месте и появляется через промежуток времени равный тому, на котором он исчез. если исчез на 1:10, то появится на 2:20 и причем время исчезновения зависит от длины advtrackbar,
чем длинней он, тем раньше перемещается ползунок и наоборот.
я даже нашел условие в advtrackbar.pas при котором он исчезает, но как исправить я не знаю, как как tadvtrackbar зависит еще от 3х компонентов,
а именно от AdvStyleIF, AdvGDIP и GDIPicture(в большей степени от 2х последних)


[ВладОшин]   (2013-10-02 09:29:00) [2]


> у него там две таких строки. для надежности.

заметил, но фиг с этим, не должно мешать, вроде :)
хотя, первую все же лучше убрать.

Все равно не успеет перерисоваться, имхо.
1.Не так много времени пройдет, пока что-то там расчитывается(z)
2.да main(гуй)-поток будет занят расчетами(z), не до рисования ему будет


Туповатый   (2013-10-02 09:01:00) [3]


> У тебя только в одном месте двигается трак - в TForm1.Timer1Timer
> в строке
> tb1.Position := Bass_ChannelGetPosition(stream, 0);

у него там две таких строки. для надежности.


[ВладОшин]   (2013-10-02 08:42:00) [4]


> tb1: TAdvTrackBar;

не может быть! :)

tb1. Position- тип какой?

У тебя только в одном месте двигается трак - в TForm1.Timer1Timer
в строке
tb1.Position := Bass_ChannelGetPosition(stream, 0);
Может, переполнение банальное

поставь рядом  стандартный трак, проверь в траке ли дело
типа
K := Bass_ChannelGetPosition(stream, 0);
tb1.Position := K;
Стандартный.Position := K;

поставь следилку на время отладки, что возвращается.
типа memo1.lines.add( Bass_ChannelGetPosition(stream, 0);  )
посмотри потом что за цифры около 1:10 приходят за сек до и после


> brother ©   (01.10.13 19:58) [4]

иногда хочется заморочиться :)


robt5   (2013-10-01 21:52:00) [5]

жесть
рукалицо


artemka2008   (2013-10-01 21:47:00) [6]

tb1: TAdvTrackBar;


brother   (2013-10-01 19:58:00) [7]

Влад, вот не лень же тебе ;)


[ВладОшин]   (2013-10-01 13:55:00) [8]

накачают всякой фигни..
1.
advtrackbar  - нет в стандартной поставки

2.
строка tb1.Position := Bass_ChannelGetPosition(stream,0);
tb1.Position - тип?


brother   (2013-10-01 13:52:00) [9]

> Исходники:

нет, спасибо не надо...


artemka2008   (2013-10-01 13:39:00) [10]

Исходники:
http://rusfolder.com/38249830


Наверх

Титульная страница Поиск, карта сайта Написать письмо