| 
 |  
Добавляет к серии TArrowSeries новую стрелку с указанными значениями начальной и конечной точек по осям X и Y.
Синтаксис
| srsObj.AddArrow(
 |  |   ValueX0, |  |   ValueY0, |  |   ValueX1, |  |   ValueY1, |  |   Label, |  |   Color
 |  | );
 |   
 
 
 
| Параметры
 |  
| Параметр
 | Тип
 | Описание
 |  
| ValueX0
 | Number
 | значение начальной точки по оси X
 |  
| ValueY0
 | Number
 | значение начальной точки по оси Y
 |  
| ValueX1
 | Number
 | значение конечной точки по оси X
 |  
| ValueY1
 | Number
 | значение конечной точки по оси Y
 |  
| Label
 | String
 | метка стрелки (необязательный параметр)
 |  
| Color
 | TColor
 | цвет стрелки (необязательный параметр)
 |   
 
 |   
Возвращаемое значение
Целое число, представляющее индекс добавленной стрелки.
 
 
var tab=20;
  // Главная форма frm=new TForm(); frm.Caption="JS+ - метод серии TArrowSeries AddArrow"; frm.Width =900; frm.Height=675;
  var srs_List=new Array( "TAreaSeries", "TArrowSeries", "TBarSeries", "TBubbleSeries", "TGanttSeries", "TFastLineSeries", "TLineSeries", "TPointSeries", "TPieSeries" );
  var data_List=new Array( "10|болты", "40|винты", "20|гайки", "60|гвозди", "40|дюбели", "80|саморезы", "60|шайбы", "100|шурупы" );
  // Строка состояния stb=new TStatusBar(frm);
  // Кнопка Сохранить with (bt1=new TButton(frm)) {   Caption="Сохранить";   Top=stb.Top-Height-tab;   Hint="Сохранить изображение BMP в файл";   ShowHint=true;   strTag="SAVE";   OnClick=btn_Click; }
  // Кнопка Копировать with (bt2=new TButton(frm)) {   Caption="Копировать";   Width=frm.TextWidth(Caption)+tab;   Height=bt1.Height;   Top=bt1.Top;   Hint="Копировать изображение BMP в Буфер обмена";   ShowHint=true;   strTag="COPY";   OnClick=btn_Click; }
  bt1.Width=bt2.Width; bt1.Left=frm.ClientWidth-bt1.Width-tab; bt2.Left=bt1.Left-bt2.Width-tab;
  // Панель закладок pgc=new TPageControl(frm); pgc.SetBounds(tab,tab,frm.ClientWidth-tab*2,bt1.Top-tab*2); pgc.OnChange=pgc_Change;
  // Закладки for (i=0,ni=srs_List.length;i<ni;i++) {   srs_id=(srs_str=srs_List[i]).replace("T","").replace("Series","");   with (tsh=new TTabSheet(pgc)) {     Caption=srs_id;     Color=clWhite;     strTag=srs_str;   }
    // TChart   with (chr=new TChart(tsh)) {     SetBounds(15,15,tsh.ClientWidth-30,tsh.ClientHeight-30);     MarginTop=MarginBottom=5;     MarginRight=15;     tsh.cmpTag=chr;
      // Верхний заголовок     with (Title) {       Caption="Серия "+srs_str;       Font.Style=fsBold;       VertMargin=20;       Visible=true;     }
      // Нижний заголовок     with (chr.Foot) {       Caption="Номенклатура";       Visible=true;     }   }
    // Левая ось   with (chr.LeftAxis) {     with (Title){       Caption="Количество, шт.";       Font.Color=srs_clr=clBlue;     }     Visible=true;   }
    // Нижняя ось   with (chr.BottomAxis) {     MinorTickLength=0;     Visible=true;   }
    // Серия   srs=eval("new "+srs_str+"(chr)");   srs.Color=srs_clr;
    switch (srs_id) {     case "Area":     srs.AreaBrush=bsDiagCross;     // Вертикальные линии     with (srs.AreaLinesPen) {       Color=clLtGray;       Visible=true;     }     break;
      case "Arrow":     srs.ArrowHeight=srs.ArrowWidth=10;     case "Bar":     chr.BottomAxis.Labels=false;     break;
      case "FastLine":     with (srs.Marks) {       ShapeStyle=fosEllipse;       ArrowLength=10;       Style=smsValue;       Visible=true;     }     srs.OnClick=srs_Click;     srs.OnDblClick=srs_DblClick;     break;
      case "Pie":     srs.DonutPercent=40;     chr.Foot.Visible=false;     case "Gantt":     chr.LeftAxis.Labels=     chr.BottomAxis.Labels=false;     break;
      case "Point":     case "Line" :     with (srs.Pointer) {       Style=psCircle;       Visible=true;     }     with (srs.Marks) {       ArrowLength=15;       Visible=true;     }     srs.OnGetMarkText=srs_GetMarkText;     srs.OnClickPointer=srs_ClickPointer;   }
    // Заполнение серии данными   srs.BeginUpdate();   for (j=0,k=1,nj=data_List.length;j<nj;k++,j++) {     pnt_lst=data_List[j].split("|");     y=parseFloat(pnt_lst[0]);     switch (srs_id) {       case "Arrow" : srs.AddArrow (nj/2,45,k,y); break;       case "Bubble": srs.AddBubble(k,y,9,pnt_lst[1]); break;       case "Gantt" : srs.AddGantt (k-0.5,k+0.5,y,pnt_lst[1]); break;             default: srs.AddXY(k,y,pnt_lst[1]);     }   }   srs.EndUpdate();
    // Масштабирование осей   with (chr.LeftAxis) {     Automatic=false;     Minimum=0;     Maximum=srs.MaxYValue();   }   with (chr.BottomAxis) {     Automatic=false;     Minimum=0;     Maximum=srs.MaxXValue()+1;   } }
  // Начальная серия pgc.ActivePageIndex=2;// TBarSeries pgc_Change(pgc);
  frm.ShowModal();
  // Обработчик события TButton::OnClick function btn_Click(btn) {   var dlg,opr=btn.strTag,chr=pgc.ActivePage.cmpTag;
    switch (opr) {     case "COPY":     chr.CopyToClipboardBitmap();     stb.SimpleText=" Изображение скопировано в Буфер обмена";     break;                       case "SAVE":     with (dlg=new TSavePictureDialog(frm)) {       Title="Сохранение изображения BMP в файл";       Options+=ofShareAware+ofCreatePrompt+ofOverwritePrompt;       Filter="BMP-файлы (*.bmp)|*.bmp|Все файлы (*.*)|*.*";       DefaultExt="bmp";       InitialDir=JSPlus.TempDir;       FileName="ChartImg.bmp";     }
      if (dlg.Execute()) {       chr.SaveToBitmapFile(dlg.FileName);       stb.SimpleText=" Сохранен файл: "+dlg.FileName;     }     dlg.Delete();   } }
  // Обработчик события T[Line,Point]Series::OnGetMarkText function srs_GetMarkText(srs,i,txt) {   txt.Value="Метка №"+(i+1); }
  // Обработчик события T[Line,Point]Series::OnClickPointer function srs_ClickPointer(srs,i,x,y) {   stb.SimpleText=" Клик на указателе: №"+(i+1)+" ("+x+":"+y+")"; }
  // Обработчик события TFastLineSeries::OnClick function srs_Click(srs,i,ms_button,shift,x,y) {   stb.SimpleText=" Клик на серии: №"+(i+1)+" ("+x+":"+y+")"; }
  // Обработчик события TFastLineSeries::OnDblClick function srs_DblClick(srs,i,m_button,shift,x,y) {   stb.SimpleText=" 2-клик на серии: №"+(i+1)+" ("+x+":"+y+")"; }
  // Обработчик события TPageControl::OnChange function pgc_Change(pgc) {   var tsh=pgc.Pages[pgc.ActivePageIndex];
    stb.SimpleText=" Выбрана серия "+tsh.strTag; } 
 
 
 
 |   
Совместимость
C++ Builder/Delphi
 
 
 |  
| JS+ | Руководство пользователя
 |   
 |   
 |