Урок 15 - Знакомство с компонентами (часть 6/12)

  В этом уроке мы продолжаем знакомится с компонентами из вкладки Win32 и сейчас рассмотрим компонент под названием TrackBar. Компонент TrackBar представляет из себя некое поле с засечками и бегунок.

TrackBar


Для чего он нужен? Предположим, что вы пишите программу под кодовым названием медиа проигрыватель и вам нужен компонент для изменения громкости или баланса звука, дак вот TrackBarотлично справится с этой задачей.
Свойства Min и Max отвечают за минимальную и максимальную позицию ползунка соответственно.
По умолчанию Min = 0, а Max = 10. Давайте изменим максимальное значение, пусть будет 50. И как мы видим, после изменения максимального значения число засечек увеличилось, что вполне адекватно на мой взгляд.
Следующее свойство Orientation. Оно отвечает за ориентацию ползунка (не подумайте ничего плохого). В этом свойстве мы можем задать отображение ползунка: горизонтальное или вертикальное.
Следующие свойства SelStart и SelEnd. Они играют информативную роль в жизни компонента TrackBar. Выставим значения SelStart = 20 и SelEnd = 30. Появилась синяя (возможен другой цвет) область в поле TrackBar'а и оно показывает пользователю диапазон оптимальных значений или наоборот - не желательных.

TrackBar


Следующее свойство ThumbLenght. Оно отвечает за размер TrackBar'а. Выставим значение ThumbLenght = 10 и TrackBar станет у нас узеньким.
Следующее свойство TickMarks. Оно отвечает за положение засечек на компоненте и может принимать следующие значения:
  • отображение засечек сверху (справа при вертикальном отображении)
  • снизу (слева)
  • и по обе стороны, то есть и сверху и снизу одновременно (либо справа и слева, тут ничего сложного нет).

Следующее свойство Position. Оно отвечает за положение самого ползунка на компоненте. Например у нас стоит максимальное значение 50 (Max = 50), если сейчас изменить значение Position на 25, то ползунок будет по середине TrackBar'a.
С самым основным мы с вами познакомились. Ну а остальные свойства идентичны свойствам других компонентов.

Двигаемся дальше и кидаем на форму уже другой компонент под названием ProgressBar. Он необходим для отображения загрузки в программе.
У него так же есть свойство Position и давайте его сразу изменим на 50. Вы наверняка видели много раз этот компонент в других программах. Вообще, свойства компонентов ProgressBar и TrackBar в основном схожи, единственное, что наверное следует выделить свойство Step. Оно изменяет длину шага. То есть, если минимальное значение 0, максимальное 50, а шаг равен 25, то спустя какое-то время наш компонент будет сразу заполнен на половину.

Давайте объединим два этих компонента. У компонента TrackBar есть событие OnChange на вкладке Events, оно возникает при изменении положения ползунка.
В этом событии давайте напишем следующую строку кода:
procedure TForm1.TrackBar1Change(Sender: TObject);
begin
ProgressBar1.Position:=TrackBar1.Position; //вот она, строка.
end;
При перемещении ползунка, будет присваиваться значение позиции ползунка компоненту ProgressBar.
Вообщем скомпилируйте программу и посмотрите что получилось.

Взаимодействие TrackBar и ProgressBar


Рассмотрим еще один компонент, которого зовут UpDown. Этот компонент взаимодействует с другими компонентами. Лучше всего показать на примере. Для этого разместим на форме несколько компонентов: Edit и UpDown.
У компонента UpDown есть свойство Associate, в нем можно задать имя компонента, с которым будет работать (взаимодействовать) компонент UpDown. Выберем в этом свойстве из выпадающего списка наш Edit. И сразу мы можем созерцать, как UpDown прижался к Edit'у.

Edit и UpDown


После компиляции и запуска программы, нажимая на компонент UpDown, мы автоматически меняем значение в компоненте Edit.
У компонента UpDown имеется полезное свойство Increment, которое задает величину изменения значения при нажатии на стрелочки. То есть, если Increment = 5, то после одного нажатия на стрелочки Up или Down значение изменится на 5 единиц.

В следующем уроке мы продолжим изучение компонентов с вкладки Win32.

Ну вот и всё! Удачи!
Встретимся в следующем уроке!



    No results found.
Отменить.