|
|
Определяет динамический индикатор различных типов.
Создание объекта
gauObj=new TGauge(Parent);
Собственные свойства
|
Свойство
| Тип
| Описание
|
BackColor
| TColor
| фоновый цвет индикатора
|
ForeColor
| TColor
| активный цвет индикатора (по умолчанию clHotLight)
|
Kind
| Enum
| тип индикатора (см. ниже)
|
MaxValue
| Number
| максимальное значение индикатора (по умолчанию 0)
|
MinValue
| Number
| минимальное значение индикатора (по умолчанию 100)
|
Progress
| Number
| текущее значение индикатора
|
ShowText
| Boolean
| показывать текстовое значение индикатора
|
Только чтение
| [TYPE]
| [DESC]
|
Canvas
| TCanvas
| дескриптор графической канвы
|
PercentDone
| Number
| текущее значение индикатора в процентах от диапазона свойств [MinValue ... MaxValue]
|
|
Свойство Kind
|
Значение
| Описание
|
gkHorizontalBar
| горизонтальная полоса
|
gkNeedle
| хорда полукруга
|
gkPie
| сектор круга
|
gkText
| текстовая строка
|
gkVerticalBar
| вертикальная полоса
|
|
Стандартные свойства
Собственные методы
|
Метод
| Описание
|
AddProgress
| увеличивает текущее значение индикатора на указанную величину
|
|
Стандартные методы
Стандартные события
var tmr_Busy=false;
// Главная форма frm=new TForm(); frm.Caption="JS+ - визуальный компонент TGauge"; 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;
// Панель закладок pgc=new TPageControl(frm); pgc.SetBounds(10,10,frm.ClientWidth-20,btn.Top-20);
for (i=0;i<5;i++) { // Закладка tsh=new TTabSheet(pgc);
// Индикатор на закладке gau=tsh.cmpTag=new TGauge(tsh); gau.BorderStyle=bsNone; gau.ShowText=true;
switch (i) { case 0: tsh.Caption="HorizontalBar"; gau.Kind=gkHorizontalBar; gau.Width =tsh.ClientWidth-30; gau.Height=tsh.TextHeight("0")+8; gau.Left=(tsh.ClientWidth -gau.Width )/2; gau.Top =(tsh.ClientHeight-gau.Height)/2; gau.BorderStyle=bsSingle; break;
case 1: tsh.Caption="Needle"; gau.Kind=gkNeedle; gau.Width =tsh.ClientHeight-30; gau.Height=gau.Width/2; gau.Left=(tsh.ClientWidth -gau.Width )/2; gau.Top =(tsh.ClientHeight-gau.Height)/2; break;
case 2: tsh.Caption="Pie"; gau.Kind=gkPie; gau.Width=gau.Height=tsh.ClientHeight-30; gau.Left=(tsh.ClientWidth-gau.Width)/2; gau.Top =15; break;
case 3: tsh.Caption="Text"; gau.Kind=gkText; gau.Width =tsh.TextWidth("100%")*2; gau.Height=tsh.TextHeight("0")+8; gau.Left=(tsh.ClientWidth -gau.Width )/2; gau.Top =(tsh.ClientHeight-gau.Height)/2; gau.BorderStyle=bsSingle; break;
case 4: tsh.Caption="VerticalBar"; gau.Kind=gkVerticalBar; gau.Width =tsh.TextWidth("100%")+8; gau.Height=tsh.ClientHeight-30; gau.Left=(tsh.ClientWidth -gau.Width )/2; gau.Top =(tsh.ClientHeight-gau.Height)/2; gau.BorderStyle=bsSingle; } }
// Таймер tmr=new TTimer(frm); tmr.Interval=50; tmr.OnTimer=tmr_Timer;
frm.ShowModal();
// Обработчик события 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) { if (tmr_Busy) return; tmr_Busy=true;
var gau=pgc.Pages[pgc.ActivePageIndex].cmpTag;
switch (gau.Progress) { case gau.MinValue: gau.numTag= 1; Sleep(200); break; case gau.MaxValue: gau.numTag=-1; Sleep(200); }
gau.Progress+=gau.numTag; tmr_Busy=false; }
|
Совместимость
C++ Builder/Delphi
|
JS+ | Руководство пользователя
|
|
|
|
|
|