hqchart 1.1.14754 → 1.1.14764

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -4658,6 +4658,7 @@ function JSChart(divElement, bOffscreen, bCacheCanvas)
4658
4658
  if (IFrameSplitOperator.IsBool(item.EnableDBClick)) chart.ChartCorssCursor.EnableDBClick=item.EnableDBClick;
4659
4659
 
4660
4660
  if (IFrameSplitOperator.IsBool(item.IsShowCorssPoint)) chart.ChartCorssCursor.CorssPointConfig.Enable=item.IsShowCorssPoint;
4661
+ if (IFrameSplitOperator.IsBool(item.IsShowIncrease)) chart.ChartCorssCursor.StringFormatX.IsShowIncrease=item.IsShowIncrease;
4661
4662
 
4662
4663
  }
4663
4664
 
@@ -7113,7 +7114,8 @@ var JSCHART_MENU_ID=
7113
7114
  CMD_CORSS_DBCLICK_ID:57, //双击显示隐藏十字光标
7114
7115
  CMD_ENABLE_KLINE_DAY_SUMMARY_ID:58, //K线底部显示走完剩余时间
7115
7116
  CMD_SHOW_BUYSELL_BAR_ID:59, //盘口分析(右侧显示买卖盘柱子) 分时图
7116
-
7117
+ CMD_CORSS_SHOW_INCREASE_ID:60, //十字光标 底部显示"至今涨幅"
7118
+ CMD_CORSS_X_TEXTALIGN_ID:61, //十字光标 底部文字对齐方式
7117
7119
 
7118
7120
 
7119
7121
  CMD_REPORT_CHANGE_BLOCK_ID:100, //报价列表 切换板块ID
@@ -15154,6 +15156,16 @@ function JSChartContainer(uielement, OffscreenElement, cacheElement)
15154
15156
  this.ChartCorssCursor.IsShowClose=srcParam;
15155
15157
  }
15156
15158
  break;
15159
+ case JSCHART_MENU_ID.CMD_CORSS_SHOW_INCREASE_ID:
15160
+ if (IFrameSplitOperator.IsBool(srcParam) && this.ChartCorssCursor)
15161
+ {
15162
+ this.ChartCorssCursor.StringFormatX.IsShowIncrease=srcParam;
15163
+ }
15164
+ break;
15165
+ case JSCHART_MENU_ID.CMD_CORSS_X_TEXTALIGN_ID:
15166
+ if (param==null) return false;
15167
+ if (this.ChartCorssCursor) this.ChartCorssCursor.BottomConfig.Align=param;
15168
+ break;
15157
15169
  case JSCHART_MENU_ID.CMD_CORSS_POINT_ID:
15158
15170
  if (IFrameSplitOperator.IsBool(srcParam) && this.ChartCorssCursor) this.ChartCorssCursor.CorssPointConfig.Enable=srcParam;
15159
15171
  break;
@@ -60325,6 +60337,7 @@ function ChartCorssCursor()
60325
60337
 
60326
60338
  this.StringFormatX;
60327
60339
  this.StringFormatY;
60340
+ this.HQChart;
60328
60341
 
60329
60342
  this.ShowTextMode={ Left:1, Right:1, Bottom:1 }; //0=不显示 1=显示在框架外 2=显示在框架内
60330
60343
  this.TextFormat= { Right:0 }; //0=默认 1=价格显示(分时图才有用)
@@ -60924,13 +60937,16 @@ function ChartCorssCursor()
60924
60937
  var textWidth=this.Canvas.measureText(text).width; //前后各空2个像素
60925
60938
  var margin=this.BottomConfig.Margin;
60926
60939
  var textOffset=this.BottomConfig.TextOffset;
60940
+ var textAlign=this.BottomConfig.Align;
60927
60941
  var rtBG=
60928
60942
  {
60929
60943
  Top:bottom, Height:margin.Top+margin.Bottom+textHeight,
60930
60944
  XCenter:x, Width:textWidth+margin.Left+margin.Right
60931
60945
  };
60932
60946
  rtBG.Bottom=rtBG.Top+rtBG.Height;
60933
- rtBG.Left=rtBG.XCenter-rtBG.Width/2;
60947
+ if (textAlign==1) rtBG.Left=rtBG.XCenter-rtBG.Width/2;
60948
+ else rtBG.Left=rtBG.XCenter;
60949
+
60934
60950
  rtBG.Right=rtBG.Left+rtBG.Width;
60935
60951
 
60936
60952
  if (rtBG.Left<=0)
@@ -62369,7 +62385,8 @@ function HQDateStringFormat()
62369
62385
 
62370
62386
  this.DateFormatType=0; //0=YYYY-MM-DD 1=YYYY/MM/DD 2=YYYY/MM/DD/W 3=DD/MM/YYYY
62371
62387
  this.LanguageID=0;
62372
- this.KItem=null; //缓存当前的K线
62388
+ this.KItem=null; //缓存当前的K线
62389
+ this.IsShowIncrease=false; //是否显示"至今涨幅"
62373
62390
 
62374
62391
  this.Operator=function()
62375
62392
  {
@@ -62408,6 +62425,13 @@ function HQDateStringFormat()
62408
62425
  this.Text = this.Text + " " + time;
62409
62426
  }
62410
62427
 
62428
+ if (this.IsShowIncrease && IFrameSplitOperator.IsNonEmptyArray(this.Data.Data)) //计算涨幅
62429
+ {
62430
+ var lastItem=this.Data.Data[this.Data.Data.length-1]; //最后一个数据
62431
+ var value=(lastItem.Close-currentData.YClose)/currentData.YClose*100;
62432
+ this.Text+=` ${g_JSChartLocalization.GetText('至今涨幅',this.LanguageID)}${value.toFixed(2)}%`;
62433
+ }
62434
+
62411
62435
  if (this.GetEventCallback)
62412
62436
  {
62413
62437
  var event=this.GetEventCallback(JSCHART_EVENT_ID.ON_FORMAT_CORSSCURSOR_X_TEXT);
@@ -78760,7 +78784,7 @@ function JSChartResource()
78760
78784
  Icon: { Text:'\ue6a3', Color:'rgb(255,255,255)', Family:"iconfont", Size:14 }
78761
78785
  },
78762
78786
 
78763
- BottomText:{ Margin: { Left:4, Right:4, Top:0, Bottom:0 }, TextOffset:{X:4, Y:-1 } },
78787
+ BottomText:{ Margin: { Left:4, Right:4, Top:0, Bottom:0 }, TextOffset:{X:4, Y:-1 }, Align:1 }, //Align 0=左对齐 1=居中
78764
78788
  LeftText:{ Margin: { Left:4, Right:4, Top:0, Bottom:0 }, TextOffset:{X:4, Y:-1 } },
78765
78789
  RightText:{ Margin: { Left:4, Right:4, Top:0, Bottom:0 }, TextOffset:{X:4, Y:-1 } },
78766
78790
  RightOverlayText:{ Margin: { Left:2, Right:2, Top:0, Bottom:0 }, TextOffset:{X:2, Y:-1 } }, //右侧叠加坐标
@@ -81922,6 +81946,8 @@ function JSChartLocalization()
81922
81946
  ["周", {CN:'周', EN:'Week', TC:'周'} ],
81923
81947
  ["月", {CN:'月', EN:'Month', TC:'月'} ],
81924
81948
  ["年", {CN:'年', EN:'Year', TC:'年'} ],
81949
+
81950
+ ["至今涨幅", {CN:'至今涨幅', EN:'increase to date ', TC:'至今涨幅'}]
81925
81951
 
81926
81952
  ]);
81927
81953
 
@@ -83750,6 +83776,7 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
83750
83776
  this.ChartCorssCursor.StringFormatX=g_DivTooltipDataForamt.Create("CorssCursor_XStringFormat");
83751
83777
  this.ChartCorssCursor.StringFormatX.GetEventCallback=(id)=> { return this.GetEventCallback(id); }
83752
83778
  this.ChartCorssCursor.StringFormatX.LanguageID=this.LanguageID;
83779
+ this.ChartCorssCursor.StringFormatX.IsShowIncrease=true;
83753
83780
  this.ChartCorssCursor.StringFormatY=g_DivTooltipDataForamt.Create("CorssCursor_YStringFormat");
83754
83781
  this.ChartCorssCursor.StringFormatY.GetEventCallback=(id)=> { return this.GetEventCallback(id); }
83755
83782
  this.ChartCorssCursor.StringFormatY.LanguageID=this.LanguageID;
@@ -83757,6 +83784,7 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
83757
83784
  this.ChartCorssCursor.StringFormatY.HQChart=this;
83758
83785
  this.ChartCorssCursor.GetEventCallback=(id)=> { return this.GetEventCallback(id); }
83759
83786
  this.ChartCorssCursor.OnChangeStatusCallback=(data, obj)=>{ this.OnChangeCorssCursorStatus(data,obj); }
83787
+ this.ChartCorssCursor.HQChart=this;
83760
83788
 
83761
83789
  //创建等待提示
83762
83790
  this.ChartSplashPaint = new ChartSplashPaint();
@@ -88854,6 +88882,8 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
88854
88882
  var bCorssDrawVaildTime=false;
88855
88883
  var bCorssDrawPoint=false;
88856
88884
  var bCorssBCClick=false;
88885
+ var bCorssShowIncrease=false;
88886
+ var crossXTextAlign=-1;
88857
88887
  if (this.ChartCorssCursor)
88858
88888
  {
88859
88889
  bShowCorss=this.ChartCorssCursor.IsShowCorss;
@@ -88861,6 +88891,8 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
88861
88891
  bCorssDrawVaildTime=this.ChartCorssCursor.IsFixXLastTime;
88862
88892
  bCorssDrawPoint=this.ChartCorssCursor.CorssPointConfig.Enable;
88863
88893
  bCorssBCClick=this.ChartCorssCursor.EnableDBClick;
88894
+ bCorssShowIncrease=this.ChartCorssCursor.StringFormatX.IsShowIncrease;
88895
+ crossXTextAlign=this.ChartCorssCursor.BottomConfig.Align;
88864
88896
  }
88865
88897
 
88866
88898
  var bPopMinuteChart=false;
@@ -88885,6 +88917,13 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
88885
88917
  }
88886
88918
  }
88887
88919
 
88920
+ //K线浮框 是否显示指标信息
88921
+ var bTooltipDialogShowIndexTitle=false;
88922
+ if (this.DialogTooltip)
88923
+ {
88924
+ bTooltipDialogShowIndexTitle=this.DialogTooltip.IndexTitle.Enable;
88925
+ }
88926
+
88888
88927
  var aryMenu=
88889
88928
  [
88890
88929
  {
@@ -89047,6 +89086,15 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
89047
89086
  { Name:"画在有效X轴上",Data:{ ID:JSCHART_MENU_ID.CMD_CORSS_ON_VAILD_TIME_ID, Args:[!bCorssDrawVaildTime]}, Checked:bCorssDrawVaildTime },
89048
89087
  { Name:"画圆点",Data:{ ID:JSCHART_MENU_ID.CMD_CORSS_POINT_ID, Args:[!bCorssDrawPoint]}, Checked:bCorssDrawPoint },
89049
89088
  { Name:"双击显示/隐藏", Data:{ ID:JSCHART_MENU_ID.CMD_CORSS_DBCLICK_ID, Args:[!bCorssBCClick]}, Checked:bCorssBCClick },
89089
+ { Name:"至今涨幅显示/隐藏", Data:{ ID:JSCHART_MENU_ID.CMD_CORSS_SHOW_INCREASE_ID, Args:[!bCorssShowIncrease]}, Checked:bCorssShowIncrease },
89090
+ {
89091
+ Name:"底部文字对齐",
89092
+ SubMenu:
89093
+ [
89094
+ { Name:"居中", Data:{ ID:JSCHART_MENU_ID.CMD_CORSS_X_TEXTALIGN_ID, Args:[1]}, Checked:crossXTextAlign===1 },
89095
+ { Name:"左对齐", Data:{ ID:JSCHART_MENU_ID.CMD_CORSS_X_TEXTALIGN_ID, Args:[0]}, Checked:crossXTextAlign===0 },
89096
+ ]
89097
+ },
89050
89098
  ]
89051
89099
  },
89052
89100
  {
@@ -89101,6 +89149,7 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
89101
89149
  [
89102
89150
  { Name:"禁用", Data:{ ID:JSCHART_MENU_ID.CMD_DIALOG_TOOLTIP_ATTRIBUTE, Args:[{Enable:false}]}, Checked:!this.DialogTooltip },
89103
89151
  { Name:"样式1", Data:{ ID:JSCHART_MENU_ID.CMD_DIALOG_TOOLTIP_ATTRIBUTE, Args:[{Enable:true, Style:0}]}, Checked:(this.DialogTooltip && this.DialogTooltip.Style===0) },
89152
+ { Name:"样式1-指标显示", Data:{ ID:JSCHART_MENU_ID.CMD_DIALOG_TOOLTIP_ATTRIBUTE, Args:[{Enable:true, IndexTitle:{Enable:!bTooltipDialogShowIndexTitle}} ]}, Checked:bTooltipDialogShowIndexTitle },
89104
89153
  { Name:"样式2", Data:{ ID:JSCHART_MENU_ID.CMD_DIALOG_TOOLTIP_ATTRIBUTE, Args:[{Enable:true, Style:1}]}, Checked:(this.DialogTooltip && this.DialogTooltip.Style===1) },
89105
89154
  ]
89106
89155
  },
@@ -90704,13 +90753,14 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
90704
90753
 
90705
90754
  var dataType=0;
90706
90755
  var kItem=null;
90756
+ var dataIndex=-1;
90707
90757
  if (this.ChartCorssCursor.ClientPos>=0)
90708
90758
  {
90709
90759
  var hisData=this.ChartOperator_Temp_GetHistoryData();;
90710
90760
  if (!hisData) return false; //数据还没有到达
90711
90761
  if (!IFrameSplitOperator.IsNonEmptyArray(hisData.Data)) return false;
90712
90762
 
90713
- var dataIndex=hisData.DataOffset+this.ChartCorssCursor.CursorIndex;
90763
+ dataIndex=hisData.DataOffset+this.ChartCorssCursor.CursorIndex;
90714
90764
  if (dataIndex>=hisData.Data.length) dataIndex=hisData.Data.length-1;
90715
90765
  var kItem=hisData.Data[dataIndex];
90716
90766
  }
@@ -90724,6 +90774,7 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
90724
90774
  if (IFrameSplitOperator.IsNumber(kItem.Time)) dataID.Time=kItem.Time;
90725
90775
  if (!this.DialogTooltip.IsEqualDataID(dataID)) return false;
90726
90776
 
90777
+ dataIndex=hisData.Data.length-1
90727
90778
  dataType=1;
90728
90779
  }
90729
90780
 
@@ -90735,6 +90786,7 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
90735
90786
  KItem:kItem,
90736
90787
  Symbol:this.Symbol, Name:this.Name,
90737
90788
  LastValue:this.ChartCorssCursor.LastValue,
90789
+ DataIndex:dataIndex, //K先索引位置
90738
90790
  };
90739
90791
 
90740
90792
  this.DialogTooltip.Update(sendData);
@@ -93626,6 +93678,7 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
93626
93678
  this.ChartCorssCursor.CallAcutionXOperator=new CallAcutionXOperator();
93627
93679
  this.ChartCorssCursor.GetEventCallback=(id)=> { return this.GetEventCallback(id); }
93628
93680
  this.ChartCorssCursor.OnChangeStatusCallback=(data, obj)=>{ this.OnChangeCorssCursorStatus(data,obj); }
93681
+ this.ChartCorssCursor.HQChart=this;
93629
93682
 
93630
93683
  //创建等待提示
93631
93684
  this.ChartSplashPaint = new ChartSplashPaint();
@@ -99188,6 +99241,7 @@ function KLineChartHScreenContainer(uielement)
99188
99241
  this.ChartCorssCursor.StringFormatY.ExtendChartPaint=this.ExtendChartPaint;
99189
99242
  this.ChartCorssCursor.StringFormatY.HQChart=this;
99190
99243
  this.ChartCorssCursor.GetEventCallback=(id)=> { return this.GetEventCallback(id); }
99244
+ this.ChartCorssCursor.HQChart=this;
99191
99245
 
99192
99246
  //创建等待提示
99193
99247
  this.ChartSplashPaint = new ChartSplashPaint();
@@ -99370,7 +99424,8 @@ function MinuteChartHScreenContainer(uielement)
99370
99424
  this.ChartCorssCursor.StringFormatY.GetEventCallback=(id)=> { return this.GetEventCallback(id); }
99371
99425
  this.ChartCorssCursor.StringFormatY.HQChart=this;
99372
99426
  this.ChartCorssCursor.CallAcutionXOperator=new CallAcutionXOperator();
99373
- this.ChartCorssCursor.GetEventCallback=(id)=> { return this.GetEventCallback(id); }
99427
+ this.ChartCorssCursor.GetEventCallback=(id)=> { return this.GetEventCallback(id); };
99428
+ this.ChartCorssCursor.HQChart=this;
99374
99429
 
99375
99430
  //创建等待提示
99376
99431
  this.ChartSplashPaint = new ChartSplashPaint();
@@ -134317,17 +134372,22 @@ function JSDealChartContainer(uielement)
134317
134372
  chart.YClose=data.yclose;
134318
134373
  chart.Open=data.open;
134319
134374
 
134320
- if (this.IsShowLastPage) //显示最后一屏
134321
- {
134322
- var pageSize=chart.GetPageSize(true);
134323
- var offset=aryDeal.length-pageSize;
134324
- if (offset<0) offset=0;
134325
- this.Data.DataOffset=offset;
134326
- }
134375
+ if (this.IsShowLastPage) this.SetLastPageDataOffset(); //显示最后一屏
134327
134376
 
134328
134377
  this.Draw();
134329
134378
  }
134330
134379
 
134380
+ this.SetLastPageDataOffset=function()
134381
+ {
134382
+ var chart=this.ChartPaint[0];
134383
+ var dataCount=0;
134384
+ if (IFrameSplitOperator.IsNonEmptyArray(this.SourceData.Data)) dataCount=this.SourceData.Data.length;
134385
+ var pageSize=chart.GetPageSize(true);
134386
+ var offset=dataCount-pageSize;
134387
+ if (offset<0) offset=0;
134388
+ this.Data.DataOffset=offset;
134389
+ }
134390
+
134331
134391
  //增量数据下载
134332
134392
  this.RequestDealUpdateData=function()
134333
134393
  {
@@ -134370,6 +134430,7 @@ function JSDealChartContainer(uielement)
134370
134430
  this.SourceData.Data=aryDeal;
134371
134431
  this.Data.Data=this.FilterData(this.CloneArray(aryDeal));
134372
134432
  if (this.Data.DataOffset>= this.Data.Data.length) this.Data.DataOffset=0;
134433
+ if (this.IsShowLastPage) this.SetLastPageDataOffset(); //显示最后一屏
134373
134434
  }
134374
134435
  else
134375
134436
  {
@@ -135191,6 +135252,7 @@ function ChartDealList()
135191
135252
 
135192
135253
  var clientWidth=this.RectClient.Right-this.RectClient.Left;
135193
135254
  this.TableCount=parseInt(clientWidth/sumWidth);
135255
+ if (this.TableCount<=0) this.TableCount=1; //只少显示一个
135194
135256
  if (this.IsSingleTable) this.TableCount=1;
135195
135257
  this.TableWidth=clientWidth/this.TableCount;
135196
135258
 
@@ -155272,13 +155334,29 @@ function JSDialogTooltip()
155272
155334
  this.PositionColor=g_JSChartResource.DialogTooltip.PositionColor;
155273
155335
  this.DateTimeColor=g_JSChartResource.DialogTooltip.DateTimeColor;
155274
155336
  this.LanguageID=JSCHART_LANGUAGE_ID.LANGUAGE_CHINESE_ID;
155275
- this.MaxRowCount=25;
155337
+ this.MaxRowCount=35;
155338
+
155339
+
155340
+ this.ValueAlign=
155341
+ {
155342
+ Right:"UMyChart_Tooltip_Text_Span",
155343
+ };
155344
+
155345
+ this.TitleAlign=
155346
+ {
155347
+ Right:"UMyChart_Tooltip_Title_Span",
155348
+ Left:"UMyChart_Tooltip_Title_Left_Span",
155349
+ Center:"UMyChart_Tooltip_Title_Center_Span",
155350
+ };
155276
155351
 
155277
155352
  this.AryData=[];
155278
155353
  this.AryText=[];
155279
155354
 
155280
155355
  this.KItemCache=null;
155356
+ this.KItemCache2=null; //{ DataIndex:k线索引 }
155281
155357
  this.KItemCacheID=null;
155358
+ this.IndexTitle={ Enable:false, MaxCount:3 }; //是否显示指标标题
155359
+
155282
155360
  this.LastValueCache=null; //最后的鼠标位置对应的数值
155283
155361
  this.LastValueCacheID=null; //鼠标信息
155284
155362
  this.DataID=null; //当前显示的数据时间{ Symbol:, Date:, Time: }
@@ -155291,6 +155369,13 @@ function JSDialogTooltip()
155291
155369
  if (option)
155292
155370
  {
155293
155371
  if (IFrameSplitOperator.IsNumber(option.Style)) this.Style=option.Style;
155372
+ if (IFrameSplitOperator.IsPlusNumber(option.MaxRowCount)) this.MaxRowCount=option.MaxRowCount;
155373
+ if (option.IndexTitle)
155374
+ {
155375
+ var item=option.IndexTitle;
155376
+ if (IFrameSplitOperator.IsBool(item.Enable)) this.IndexTitle.Enable=item.Enable;
155377
+ if (IFrameSplitOperator.IsPlusNumber(item.MaxCount)) this.IndexTitle.MaxCount=item.MaxCount;
155378
+ }
155294
155379
  }
155295
155380
  }
155296
155381
 
@@ -155299,6 +155384,7 @@ function JSDialogTooltip()
155299
155384
  this.AryData=[];
155300
155385
  this.AryText=[];
155301
155386
  this.KItemCache=null;
155387
+ this.KItemCache2=null;
155302
155388
  this.KItemCacheID=null;
155303
155389
 
155304
155390
  if (this.DivDialog)
@@ -155413,7 +155499,7 @@ function JSDialogTooltip()
155413
155499
  {
155414
155500
  for(var i=0;i<this.MaxRowCount;++i)
155415
155501
  {
155416
- var rowItem={ Tr:null, TitleSpan:null, TextSpan:null };
155502
+ var rowItem={ Tr:null, TitleSpan:null, TextSpan:null, TitleTd:null, TextTd:null };
155417
155503
 
155418
155504
  var trDom=document.createElement("tr");
155419
155505
  trDom.className='UMyChart_Tooltip_Group_Tr';
@@ -155423,6 +155509,7 @@ function JSDialogTooltip()
155423
155509
  var tdDom=document.createElement("td");
155424
155510
  tdDom.className="UMyChart_Tooltip_Title_Td"; //标题
155425
155511
  trDom.appendChild(tdDom);
155512
+ rowItem.TitleTd=tdDom;
155426
155513
 
155427
155514
  var spanDom=document.createElement("span");
155428
155515
  spanDom.className='UMyChart_Tooltip_Title_Span';
@@ -155433,6 +155520,7 @@ function JSDialogTooltip()
155433
155520
  var tdDom=document.createElement("td");
155434
155521
  tdDom.className="UMyChart_Tooltip_Text_Td"; //数值
155435
155522
  trDom.appendChild(tdDom);
155523
+ rowItem.TextTd=tdDom;
155436
155524
 
155437
155525
  var spanDom=document.createElement("span");
155438
155526
  spanDom.className='UMyChart_Tooltip_Text_Span';
@@ -155468,6 +155556,7 @@ function JSDialogTooltip()
155468
155556
  if (this.KItemCacheID!=strKItem) //数据变动的才更新
155469
155557
  {
155470
155558
  this.KItemCache= JSON.parse(strKItem);
155559
+ this.KItemCache2={ DataIndex:data.DataIndex };
155471
155560
  this.KItemCacheID=strKItem;
155472
155561
  bUpdata=true;
155473
155562
  }
@@ -155532,6 +155621,7 @@ function JSDialogTooltip()
155532
155621
  if (this.KItemCacheID!=strKItem) //数据变动的才更新
155533
155622
  {
155534
155623
  this.KItemCache= JSON.parse(strKItem);
155624
+ this.KItemCache2={ DataIndex:data.DataIndex };
155535
155625
  this.KItemCacheID=strKItem;
155536
155626
  bUpdata=true;
155537
155627
  }
@@ -155592,9 +155682,18 @@ function JSDialogTooltip()
155592
155682
  if (!this.KItemCache) return;
155593
155683
 
155594
155684
  if (this.HQChart.ClassName=='KLineChartContainer')
155685
+ {
155595
155686
  this.AryText=this.GetFormatKLineTooltipText(this.KItemCache);
155687
+ if (this.IndexTitle.Enable)
155688
+ {
155689
+ var aryIndexTitle=this.GetIndexTitleTooltipText(this.KItemCache,this.KItemCache2);
155690
+ if (IFrameSplitOperator.IsNonEmptyArray(aryIndexTitle)) this.AryText.push(...aryIndexTitle);
155691
+ }
155692
+ }
155596
155693
  else if (this.HQChart.ClassName=='MinuteChartContainer')
155694
+ {
155597
155695
  this.AryText=this.GetFormatMinuteTooltipText(this.KItemCache);
155696
+ }
155598
155697
  else
155599
155698
  return;
155600
155699
 
@@ -155605,9 +155704,53 @@ function JSDialogTooltip()
155605
155704
  var item=this.AryData[index];
155606
155705
 
155607
155706
  item.TitleSpan.innerText=outItem.Title;
155608
- item.TitleSpan.style.color=this.TextColor;
155707
+ if (outItem.TitleColor) item.TitleSpan.style.color=outItem.TitleColor;
155708
+ else item.TitleSpan.style.color=this.TextColor;
155709
+
155609
155710
  item.TextSpan.innerText=outItem.Text;
155610
155711
  item.TextSpan.style.color=outItem.Color;
155712
+
155713
+ //修改右侧数值样式
155714
+ if (outItem.ClassName)
155715
+ {
155716
+ item.TextSpan.className=outItem.ClassName;
155717
+ }
155718
+ else
155719
+ {
155720
+ if (item.TextSpan.className!=this.ValueAlign.Right) item.TextSpan.className=this.ValueAlign.Right;
155721
+ }
155722
+
155723
+ //修改左侧标题样式
155724
+ if (outItem.TitleClassName)
155725
+ {
155726
+ item.TitleSpan.className=outItem.TitleClassName;
155727
+ }
155728
+ else
155729
+ {
155730
+ if (this.Style==0)
155731
+ {
155732
+ if (item.TitleSpan.className!=this.TitleAlign.Right) item.TitleSpan.className=this.TitleAlign.Right;
155733
+ }
155734
+ else if (this.Style==1)
155735
+ {
155736
+ if (item.TitleSpan.className!=this.TitleAlign.Left) item.TitleSpan.className=this.TitleAlign.Left;
155737
+ }
155738
+ }
155739
+
155740
+ if (item.TitleTd)
155741
+ {
155742
+ if (outItem.IsMergeCell) //合并单元格
155743
+ {
155744
+ item.TitleTd.colSpan=2;
155745
+ item.TextTd.style.display="none";
155746
+ }
155747
+ else
155748
+ {
155749
+ if (item.TitleTd.colSpan!=1) item.TitleTd.colSpan=1;
155750
+ item.TextTd.style.display="";
155751
+ }
155752
+ }
155753
+
155611
155754
  item.Tr.style.display="";
155612
155755
  if (item.Tr2) item.Tr2.style.display="";
155613
155756
  }
@@ -155803,6 +155946,57 @@ function JSDialogTooltip()
155803
155946
  return aryText;
155804
155947
  }
155805
155948
 
155949
+ this.GetIndexTitleTooltipText=function(kItem, data)
155950
+ {
155951
+ if (!(this.Style===0)) return null;
155952
+
155953
+ if (!this.HQChart) return null;
155954
+ if (!IFrameSplitOperator.IsNonEmptyArray(this.HQChart.TitlePaint)) return null;
155955
+ if (!IFrameSplitOperator.IsNumber(data.DataIndex) || data.DataIndex<0) return null;
155956
+
155957
+ var aryText=[];
155958
+ var dataIndex=data.DataIndex;
155959
+ for(var i=0,j=0,k=0; i<this.HQChart.TitlePaint.length && k<this.IndexTitle.MaxCount; ++i)
155960
+ {
155961
+ var titleChart=this.HQChart.TitlePaint[i];
155962
+ if (titleChart.ClassName!="DynamicChartTitlePainting") continue;
155963
+ if (!IFrameSplitOperator.IsNonEmptyArray(titleChart.Data)) continue;
155964
+
155965
+ var indexName=titleChart.Title;
155966
+ //if (titleChart.ArgumentsText) indexName+=titleChart.ArgumentsText;
155967
+ aryText.push({ Title:indexName, IsMergeCell:true, TitleClassName:this.TitleAlign.Center });
155968
+ for(j=0;j<titleChart.Data.length;++j)
155969
+ {
155970
+ var item=titleChart.Data[j];
155971
+ if (!item || !item.Data || !IFrameSplitOperator.IsNonEmptyArray(item.Data.Data)) continue;
155972
+ if (item.IsShow===false) continue;
155973
+ if (item.IsVisible===false) continue;
155974
+ if (item.DataType) continue; //定制类型暂时不支持
155975
+
155976
+ value=item.Data.Data[dataIndex];
155977
+ var text="--";
155978
+ if (value) text=titleChart.FormatValue(value, item);
155979
+
155980
+ var title=item.Name;
155981
+ var dyTitle=titleChart.GetDynamicOutName(item.Name); //动态标题
155982
+ if (dyTitle) title=dyTitle;
155983
+
155984
+ var tooltipItem=
155985
+ {
155986
+ Title:title,
155987
+ Text:text,
155988
+ Color:item.Color
155989
+ };
155990
+
155991
+ aryText.push(tooltipItem);
155992
+ }
155993
+
155994
+ ++k;
155995
+ }
155996
+
155997
+ return aryText;
155998
+ }
155999
+
155806
156000
  this.GetFormatMinuteTooltipText=function(data)
155807
156001
  {
155808
156002
  var defaultfloatPrecision=GetfloatPrecision(this.HQChart.Symbol);//价格小数位数
@@ -159619,7 +159813,7 @@ function HQChartScriptWorker()
159619
159813
 
159620
159814
 
159621
159815
 
159622
- var HQCHART_VERSION="1.1.14753";
159816
+ var HQCHART_VERSION="1.1.14763";
159623
159817
 
159624
159818
  function PrintHQChartVersion()
159625
159819
  {