JS+
Усиленный язык сценариев для Windows
с возможностью встраивания
в ваши приложения
О языке JS+ Справочник Скачать JS+ DLL
Контакты
СПРАВОЧНИК ПО ЯЗЫКУ JS+ Содержание

TProgressBar

- визуальный компонент
Компоненты JS+
Определяет горизонтальной или вертикальной индикатор.

Создание объекта

prbObj=new TProgressBar(Parent);

Собственные свойства
Свойство Тип Описание
BackgroundColor TColor цвет фона полосы индикатора
BarColor TColor цвет бегущей полосы индикатора
MarqueeInterval Number шаг приращения позиции бегущего сегмента (см. свойство Style)
Max Number максимальное значение индикатора
Min Number минимальное значение индикатора
Orientation Enum ориентация полосы индикатора (см. ниже)
Position Number текущее значение индикатора
Smooth Boolean использовать сплошной вид полосы индикатора
SmoothReverse Boolean поменять начальный и конечный цвет бегущей полосы индикатора
State Enum состояние индикатора (см. ниже)
Step Number шаг приращения позиции индикатора, используемый методом StepIt
Style Enum стиль отображения процесса (см. ниже)

Свойство Orientation
Значение Описание
pbHorizontal горизонтальная полоса
pbVertical вертикальная полоса

Свойство State
Значение Описание
pbsNormal нормальное
pbsError ошибка
pbsPaused приостановлен

Свойство Style
Значение Описание
pbstNormal обычный
pbstMarquee бегущий сегмент

Стандартные свойства

Собственные методы
Метод Описание
StepBy наращивает значение свойства Position на указанную величину
StepIt наращивает значение свойства Position на величину, заданную свойством Step

Стандартные методы

Стандартные события

Пример (JS+)
var VSW=GetSystemMetrics(SM_CXVSCROLL);

// Главная форма
frm=new TForm();
frm.Caption="JS+ - визуальный компонент TProgressBar";
frm.Width =525;
frm.Height=375;

// Строка состояния
stb=new TStatusBar(frm);
stb.SimpleText=' Нажмите кнопку "Старт"';

// Кнопка
btn=new TButton(frm);
btn.Caption="Старт";
btn.Left=frm.ClientWidth-btn.Width-10;
btn.Top =stb.Top-btn.Height-10;
btn.OnClick=btn_Click;

// Переключатель
chb=new TCheckBox(frm);
chb.Text="Свойство Smooth";
chb.Width=chb.TextWidth(chb.Text)+VSW;
chb.Left=10;
chb.Top =btn.Top+(btn.Height-chb.Height)/2;
chb.OnClick=chb_Click;

// Панель закладок
pgc=new TPageControl(frm);
pgc.SetBounds(chb.Left,10,frm.ClientWidth-20,btn.Top-20);

// Закладки
for (i=0;i<2;i++) {
  // Закладка
  tsh=new TTabSheet(pgc);

  // Индикатор на закладке
  prb=tsh.cmpTag=new TProgressBar(tsh);
  prb.Step=2;

  switch (i) {
    case 0: tsh.Caption="Горизонтальный";
            (pbh=prb).Orientation=pbHorizontal;
            prb.Width =prb.Max=tsh.ClientWidth-30;
            prb.Height=25;
            prb.Left=(tsh.ClientWidth -prb.Width )/2;
            prb.Top =(tsh.ClientHeight-prb.Height)/2;
            break;

    case 1: tsh.Caption="Вертикальный";
            (pbv=prb).Orientation=pbVertical;
            prb.Width =25;
            prb.Height=prb.Max=tsh.ClientHeight-30;
            prb.Left=(tsh.ClientWidth -prb.Width )/2;
            prb.Top =(tsh.ClientHeight-prb.Height)/2;
  }
}

// Таймер
tmr=new TTimer(frm);
tmr.Interval=10;
tmr.OnTimer=tmr_Timer;

chb_Click(chb);
frm.ShowModal();

// Обработчик события OnClick переключателя
function chb_Click(chb)
{
  pbh.Smooth=
  pbv.Smooth=(chb.State==cbChecked) ? true : false;
  ProcessMessages();
}

// Обработчик события OnClick кнопки
function btn_Click(btn)
{
  var stb_Str=' Нажмите кнопку "';

  switch (btn.numTag=1-btn.numTag) {
    case 0: btn.Caption="Старт";
            tmr.Enabled=false;
            break;

    case 1: btn.Caption="Стоп";
            tmr.Enabled=true;
  }

  stb.SimpleText=stb_Str+btn.Caption+'"';
}

// Обработчик события OnTimer
function tmr_Timer(tmr)
{
  var prb=pgc.Pages[pgc.ActivePageIndex].cmpTag,p=prb.Position;

  if (p==prb.Max)
    p=prb.Min;
  else
  if ((p+=prb.Step)>prb.Max)
    p=prb.Max;

  prb.Position=p;
}
Совместимость
C++ Builder/Delphi
См. также
JS+Руководство пользователя
Адрес этой страницы: http://jsplus.ru/MANUAL/JSPlus/Component/TProgressBar.htm
© 2024,