Форум: "Основная";
Текущий архив: 2005.02.06;
Скачать: [xml.tar.bz2];
ВнизTrackBar Найти похожие ветки
← →
Oddin © (2005-01-22 00:04) [0]Вопрос значит такой. Есть 2 TrackBar"a и CheckBox нужно изменяя позицию любого из 2х TrackBar"ов если CheckBox.Cheked изменить позцию другого, сделать чтобы оба TrackBar"a передвигались одновременно в независимости от того какой из TrackBar"ов в данный момент меняет позицию. Заранее спасибо.
← →
olookin © (2005-01-22 00:36) [1]в TrackBar1.OnChange
if CheckBox1.Checked then begin
TrackBar1.Position:=(Sender as TTrackBar).Position;
TrackBar2.Position:=(Sender as TTrackBar).Position;
end;
Так?
← →
Jel © (2005-01-22 00:37) [2]Можно попробовать так. Обоим TrackBar-ам назначить один обработчик OnChange. В нем написать:
If CheckBox1.Checked then begin
if Sender = TrackBar1 then
TrackBar2.Position := TrackBar1.Position
else
TrackBar1.Position := TrackBar2.Position;
end;
Не слишком красиво, но работает. :)
← →
Jel © (2005-01-22 00:45) [3]
> olookin © (22.01.05 00:36) [1]
Твой вариант красивее. :)
← →
Oddin © (2005-01-22 00:49) [4]А что значит Sender as TTrackBar?
← →
oddin © (2005-01-22 01:18) [5]А если так: значение TrackBar1.Мах 1го TrackBar"a неизвестно или постоянно меняется но это можно решить так trackbar1.Max := trackbar2.Max или как то подругому. Нужно меняя позицию trackbar2 изменить позицию TrackBar1 с неизвестным значением TrackBar1.Мах
← →
Jel © (2005-01-22 02:14) [6]
> А что значит Sender as TTrackBar?
Это приведение типов. Не поленись, загляни в спраку, там это описано довольно подробно.
> Нужно меняя позицию trackbar2 изменить позицию TrackBar1
> с неизвестным значением TrackBar1.Мах
Если Max у обоих равны - будут равны и визуальные положения слайдеров при одинаковом Position. Если нет - нужно пересчитывать и зменять пропорционально. Если я правильно понял что ты хочешь получить.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2005.02.06;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.041 c