Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Media";
Текущий архив: 2006.10.01;
Скачать: [xml.tar.bz2];

Вниз

Проблема с TrackBar и Timer одновременно   Найти похожие ветки 

 
JaspeR ©   (2006-03-06 10:25) [0]

procedure TForm1.Timer3Timer(Sender: TObject);

begin
if mediaplayer1.FileName<>"" then
begin
trackbar2.Position:=mediaplayer1.Position;
label4.Caption:= floattostrf(100/mediaplayer1.Length*mediaplayer1.Position,ffFixed,0,0);
end;
end;


как вы поняли, это регулятор положения.
Только с ним воспроизведение тормозит!!!
как сделать, чтоб не тормозило???


 
Locke ©   (2006-03-08 00:46) [1]

та же фигня ,кто поможет?


 
Virgo_Style ©   (2006-03-08 22:24) [2]

*телепатирует*

а в TrackBar2.OnChange у вас, наверное, MediaPlayer1.Position := TrackBar2.Position, да?


 
x.pro   (2006-03-09 08:06) [3]

я тоже на такие грабли натыкался когда был молод :) и скорее всего Virgo_Style прав.


 
Locke ©   (2006-03-09 11:49) [4]

да именно так)) подскажите как изменить??


 
Locke ©   (2006-03-10 00:53) [5]

падскажите как исправить проблему)


 
Locke ©   (2006-03-10 16:34) [6]

ап хелп


 
Virgo_Style ©   (2006-03-11 10:47) [7]

Шли годы. Смеркалось (с).

Что происходит? Происходит вот что.
В Timer3Timer происходит смещение TrackBar2, поэтому вызывается
TrackBar2.OnChange, которая, в свою очередь, меняет MediaPlayer.Position.

Перемотка же - процесс небыстрый, отсюда тормоза.

Что надо сделать? Очевидно, надо сделать так, чтобы при изменении TrackBar.Position в TimerTimer не изменялся MediaPlayer.Position.

Как?
Вариант номер раз: ввести флажок, напр. IgnoreTrackChange, и перед изменением TrackBar.Position выставлять его в True; а в TrackBar.OnChange, если флажок взведен (true) - сбрасывать его, и ничего больше не делать.

Вариант номер два: перед изменением TrackBar.Position делать TrackBar.OnChange:=nil;, а после - TrackBar.OnChange:=TrackBarOnChange;

Вариант номер 3, за работоспособность не ручаюсь - проверять в TrackBar.OnChange, насколько сильно отличаются Position, и если чуть-чуть, то ничего не делать.


 
antonn ©   (2006-03-11 11:15) [8]

или использовать другой "ползунок", например TSlider (slider.pas, в инете должен быть), у него раздельные события перетаскивания и перемещения


 
Locke ©   (2006-03-11 15:20) [9]

спасибо



Страницы: 1 вся ветка

Форум: "Media";
Текущий архив: 2006.10.01;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.06 c
6-1141065397
Daimyo
2006-02-27 21:36
2006.10.01
проблема с indy компонентом


8-1142014085
Volkodav
2006-03-10 21:08
2006.10.01
Преобразование картинок


1-1155760157
иван8511
2006-08-17 00:29
2006.10.01
Как протестировать архив winrar из программы


15-1157884524
Проггер из библиотеки
2006-09-10 14:35
2006.10.01
Формат mp3 (не ID3 тегов!!!)


15-1157996312
Nic
2006-09-11 21:38
2006.10.01
Аутосорсинг





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский