hqchart 1.1.13142 → 1.1.13152

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hqchart",
3
- "version": "1.1.13142",
3
+ "version": "1.1.13152",
4
4
  "description": "HQChart - H5, 微信小程序 沪深/港股/数字货币/期货/美股 K线图(kline),走势图,缩放,拖拽,十字光标,画图工具,截图,筹码图. 分析家语法,通达信语法,(麦语法),第3方数据对接",
5
5
  "main": "lib/main.js",
6
6
  "scripts": {
@@ -18041,6 +18041,29 @@ function HQTradeFrame()
18041
18041
  var firstOpenPrice=frame.YSplitOperator.GetFirstOpenPrice();
18042
18042
  outObject.RightYValue=((yValue-firstOpenPrice)/firstOpenPrice*100).toFixed(2)+'%';
18043
18043
  }
18044
+
18045
+ if (frame.GetMainOverlayFrame)
18046
+ {
18047
+ var aryOverlayFrame=frame.GetMainOverlayFrame();
18048
+ if (aryOverlayFrame)
18049
+ {
18050
+ if (aryOverlayFrame[0]) //左侧
18051
+ {
18052
+ var leftFrame=aryOverlayFrame[0];
18053
+ var value=leftFrame.GetYData(y);
18054
+ outObject.RightYValue=yValue;
18055
+ yValue=value;
18056
+ }
18057
+
18058
+ if (aryOverlayFrame[1]) //右侧
18059
+ {
18060
+ var rightFrame=aryOverlayFrame[1];
18061
+ var value=rightFrame.GetYData(y);
18062
+ outObject.RightYValue=value;
18063
+ }
18064
+ }
18065
+ }
18066
+
18044
18067
  return yValue;
18045
18068
  }
18046
18069
  }
@@ -18567,7 +18590,34 @@ function HQTradeHScreenFrame()
18567
18590
  }
18568
18591
  }
18569
18592
 
18570
- if (frame!=null) return frame.GetYData(x);
18593
+ if (frame!=null)
18594
+ {
18595
+ var xValue= frame.GetYData(x);
18596
+
18597
+ if (frame.GetMainOverlayFrame)
18598
+ {
18599
+ var aryOverlayFrame=frame.GetMainOverlayFrame();
18600
+ if (aryOverlayFrame)
18601
+ {
18602
+ if (aryOverlayFrame[0]) //左侧
18603
+ {
18604
+ var leftFrame=aryOverlayFrame[0];
18605
+ var value=leftFrame.GetYData(x);
18606
+ outObject.RightYValue=xValue;
18607
+ xValue=value;
18608
+ }
18609
+
18610
+ if (aryOverlayFrame[1]) //右侧
18611
+ {
18612
+ var rightFrame=aryOverlayFrame[1];
18613
+ var value=rightFrame.GetYData(x);
18614
+ outObject.RightYValue=value;
18615
+ }
18616
+ }
18617
+ }
18618
+
18619
+ return xValue;
18620
+ }
18571
18621
  }
18572
18622
  }
18573
18623
 
@@ -24690,6 +24740,198 @@ function ChartKLine()
24690
24740
  this.PtMin=ptMin;
24691
24741
  }
24692
24742
 
24743
+ this.DrawKagi=function() //卡吉图
24744
+ {
24745
+ var isHScreen=(this.ChartFrame.IsHScreen===true);
24746
+ var dataWidth=this.ChartFrame.DataWidth;
24747
+ var distanceWidth=this.ChartFrame.DistanceWidth;
24748
+ var xPointCount=this.ChartFrame.XPointCount;
24749
+
24750
+ if (isHScreen)
24751
+ {
24752
+ var border=this.ChartBorder.GetHScreenBorder();
24753
+ var xOffset=border.TopEx+distanceWidth/2.0+g_JSChartResource.FrameLeftMargin;
24754
+ var chartright=border.BottomEx;
24755
+ var left=border.TopEx+g_JSChartResource.FrameLeftMargin;
24756
+ }
24757
+ else
24758
+ {
24759
+ var border=this.ChartBorder.GetBorder();
24760
+ var xOffset=border.LeftEx+distanceWidth/2.0+g_JSChartResource.FrameLeftMargin;
24761
+ var chartright=border.RightEx;
24762
+ var left=border.Left+g_JSChartResource.FrameLeftMargin;
24763
+ }
24764
+
24765
+ var ptMax={X:null,Y:null,Value:null,Align:'left'};
24766
+ var ptMin={X:null,Y:null,Value:null,Align:'left'};
24767
+ this.ShowRange.Start=this.Data.DataOffset;
24768
+ this.ShowRange.End=this.ShowRange.Start;
24769
+ this.ShowRange.DataCount=0;
24770
+ this.ShowRange.ShowCount=xPointCount;
24771
+ this.DrawKRange.Start=this.Data.DataOffset;
24772
+
24773
+ var lineWidth=2*GetDevicePixelRatio();
24774
+ this.Canvas.lineWidth=lineWidth;
24775
+ var preItem={ Item:null, X:left, Y:null };
24776
+ var index=this.Data.DataOffset-1;
24777
+ if (index>=0 && index<this.Data.Data.length)
24778
+ {
24779
+ var item=this.Data.Data[index];
24780
+ preItem.Item=item;
24781
+ if (item.Direction==1) //上
24782
+ {
24783
+ preItem.Y=this.GetYFromData(item.High,false);
24784
+ }
24785
+ else if (item.Direction==2)
24786
+ {
24787
+ preItem.Y=this.GetYFromData(item.Low,false);
24788
+ }
24789
+ }
24790
+
24791
+
24792
+ for(var i=this.Data.DataOffset,j=0;i<this.Data.Data.length && j<xPointCount;++i,++j,xOffset+=(dataWidth+distanceWidth),++this.ShowRange.DataCount)
24793
+ {
24794
+ var data=this.Data.Data[i];
24795
+ this.ShowRange.End=i;
24796
+ if (data.Open==null || data.High==null || data.Low==null || data.Close==null) continue;
24797
+
24798
+ var left=xOffset;
24799
+ var right=xOffset+dataWidth;
24800
+ if (right>chartright) break;
24801
+ var x=left+(right-left)/2;
24802
+ var yLow=this.GetYFromData(data.Low,false);
24803
+ var yHigh=this.GetYFromData(data.High,false);
24804
+ this.DrawKRange.End=i;
24805
+
24806
+ if (ptMax.Value==null || ptMax.Value<data.High) //求最大值
24807
+ {
24808
+ ptMax.X=x;
24809
+ ptMax.Y=yHigh;
24810
+ ptMax.Value=data.High;
24811
+ ptMax.Align=j<xPointCount/2?'left':'right';
24812
+ }
24813
+
24814
+ if (ptMin.Value==null || ptMin.Value>data.Low) //求最小值
24815
+ {
24816
+ ptMin.X=x;
24817
+ ptMin.Y=yLow;
24818
+ ptMin.Value=data.Low;
24819
+ ptMin.Align=j<xPointCount/2?'left':'right';
24820
+ }
24821
+
24822
+ var xFixed=ToFixedPoint2(lineWidth,x);
24823
+
24824
+ if (preItem.Item)
24825
+ {
24826
+ this.Canvas.beginPath();
24827
+ var yFixed=ToFixedPoint2(lineWidth,preItem.Y);
24828
+
24829
+ this.Canvas.moveTo(preItem.X, yFixed);
24830
+ this.Canvas.lineTo(xFixed, yFixed);
24831
+ var prePrice=null;
24832
+ if (preItem.Item.Direction==1) prePrice=preItem.Item.Low;
24833
+ else if (preItem.Item.Direction==2) prePrice=preItem.Item.High;
24834
+
24835
+ if (data.Direction==1)
24836
+ {
24837
+ if (data.High<prePrice)
24838
+ {
24839
+ this.Canvas.lineTo(xFixed, yHigh);
24840
+ this.Canvas.strokeStyle=this.DownColor;
24841
+ this.Canvas.stroke();
24842
+ }
24843
+ else
24844
+ {
24845
+ var yPrePrice=this.GetYFromData(prePrice,false);
24846
+ this.Canvas.lineTo(xFixed, yPrePrice);
24847
+ this.Canvas.strokeStyle=this.DownColor;
24848
+ this.Canvas.stroke();
24849
+
24850
+ this.Canvas.beginPath();
24851
+ this.Canvas.moveTo(xFixed, yPrePrice);
24852
+ this.Canvas.lineTo(xFixed, yHigh);
24853
+ this.Canvas.strokeStyle=this.UpColor;
24854
+ this.Canvas.stroke();
24855
+ }
24856
+
24857
+ }
24858
+ else if (data.Direction==2)
24859
+ {
24860
+ if (data.Low>prePrice)
24861
+ {
24862
+ this.Canvas.lineTo(xFixed, yLow);
24863
+ this.Canvas.strokeStyle=this.DownColor; //阳线
24864
+ this.Canvas.stroke();
24865
+ }
24866
+ else
24867
+ {
24868
+ var yPrePrice=this.GetYFromData(prePrice,false);
24869
+ this.Canvas.lineTo(xFixed, yPrePrice);
24870
+ this.Canvas.strokeStyle=this.DownColor; //阳线
24871
+ this.Canvas.stroke();
24872
+
24873
+ this.Canvas.beginPath();
24874
+ this.Canvas.moveTo(xFixed, yPrePrice);
24875
+ this.Canvas.lineTo(xFixed, yLow);
24876
+ this.Canvas.strokeStyle=this.UpColor;
24877
+ this.Canvas.stroke();
24878
+ }
24879
+ }
24880
+
24881
+ }
24882
+ else
24883
+ {
24884
+ this.Canvas.beginPath();
24885
+ if (data.Direction==1)
24886
+ {
24887
+ this.Canvas.moveTo(xFixed, yLow);
24888
+ this.Canvas.lineTo(xFixed, yHigh);
24889
+ }
24890
+ else if (data.Direction==2)
24891
+ {
24892
+ this.Canvas.moveTo(xFixed, yHigh);
24893
+ this.Canvas.lineTo(xFixed, yLow);
24894
+ }
24895
+ this.Canvas.stroke();
24896
+ }
24897
+
24898
+ /*
24899
+ if (data.YClose<data.Close)
24900
+ {
24901
+ this.Canvas.strokeStyle=this.UpColor; //阳线
24902
+ this.Canvas.fillStyle=this.UpColor;
24903
+ }
24904
+ else if (data.YClose>data.Close)
24905
+ {
24906
+ this.Canvas.strokeStyle=this.DownColor; //阴线
24907
+ this.Canvas.fillStyle=this.DownColor;
24908
+ }
24909
+
24910
+ this.Canvas.beginPath();
24911
+ if (isHScreen)
24912
+ {
24913
+ this.Canvas.moveTo(yHigh,ToFixedPoint(x));
24914
+ this.Canvas.lineTo(yLow,ToFixedPoint(x));
24915
+ }
24916
+ else
24917
+ {
24918
+ this.Canvas.moveTo(ToFixedPoint2(lineWidth,x),yHigh);
24919
+ this.Canvas.lineTo(ToFixedPoint2(lineWidth,x),yLow);
24920
+ }
24921
+ this.Canvas.stroke();
24922
+ */
24923
+
24924
+ preItem.Item=data;
24925
+ preItem.X=x;
24926
+
24927
+ if (data.Direction==1) preItem.Y=yHigh; //上
24928
+ else if (data.Direction==2) preItem.Y=yLow //下
24929
+ }
24930
+
24931
+ this.PtMax=ptMax;
24932
+ this.PtMin=ptMin;
24933
+ }
24934
+
24693
24935
  this.DrawTrade=function() //交易系统
24694
24936
  {
24695
24937
  if (!this.TradeData) return;
@@ -25197,6 +25439,10 @@ function ChartKLine()
25197
25439
  {
25198
25440
  this.DrawHLCArea();
25199
25441
  }
25442
+ else if (this.DrawType==16)
25443
+ {
25444
+ this.DrawKagi();
25445
+ }
25200
25446
  else if (this.DrawType==17)
25201
25447
  {
25202
25448
  this.DrawOrderFlow_Style4();
@@ -46038,7 +46284,7 @@ function FrameSplitY()
46038
46284
  var item=this.Frame.HorizontalInfo[i];
46039
46285
  var y=this.Frame.GetYFromData(item.Value);
46040
46286
  var yValue=leftFrame.GetYData(y);
46041
- if (ySplitOper && ySplitOper.FormatValueString) item.Message[1] = ySplitOper.FormatValueString(yValue);
46287
+ if (ySplitOper && ySplitOper.FormatValueString) item.Message[0] = ySplitOper.FormatValueString(yValue);
46042
46288
  else item.Message[0] = this.FormatValueString(yValue);
46043
46289
  }
46044
46290
  }
@@ -48296,6 +48542,7 @@ function ChartCorssCursor()
48296
48542
 
48297
48543
  this.StringFormatY.Value=yValue;
48298
48544
  this.StringFormatY.FrameID=yValueExtend.FrameID;
48545
+ this.StringFormatY.RValue=yValueExtend.RightYValue; //右侧子坐标
48299
48546
  this.StringFormatY.Point={X:x, Y:y};
48300
48547
  this.StringFormatY.ClientPos=this.ClientPos;
48301
48548
 
@@ -49100,6 +49347,7 @@ function HQPriceStringFormat()
49100
49347
  {
49101
49348
  if (this.DataFormatType==1) this.Text=IFrameSplitOperator.FormatValueThousandsString(this.Value,defaultfloatPrecision);
49102
49349
  else this.Text=IFrameSplitOperator.FormatValueString(this.Value,defaultfloatPrecision,this.LanguageID);
49350
+ if (IFrameSplitOperator.IsNumber(this.RValue)) this.RText=IFrameSplitOperator.FormatValueString(this.RValue,defaultfloatPrecision,this.LanguageID);
49103
49351
  }
49104
49352
 
49105
49353
  if (this.GetEventCallback)
@@ -65737,20 +65985,24 @@ function RenkoCalculate()
65737
65985
  //
65738
65986
  function KagiCalculate()
65739
65987
  {
65740
- this.Symbol;
65741
- this.SourceData;
65742
- this.FloatPrecision=2; //品种小数位数
65743
- this.ATR={ Count:14 }; //使用ATR计算砖块大小
65988
+ this.newMethod=RenkoCalculate; //派生
65989
+ this.newMethod();
65990
+ delete this.newMethod;
65991
+
65992
+ this.ClassName="KagiCalculate";
65993
+ this.BrickSizeType=0;
65994
+ this.BrickSize=0.5; //固定大小
65744
65995
 
65745
65996
  this.RecvHistoryData=function(sourceData, option) //历史日线数据
65746
65997
  {
65747
65998
  this.Symbol=option.Symbol;
65748
65999
  this.SourceData=sourceData;
65749
66000
  this.FloatPrecision=GetfloatPrecision(this.Symbol);
65750
- return this.Calculate(sourceData);
66001
+ if (this.BrickSizeType==1) this.CalculateATR();
66002
+ return this.CalculateByClose(sourceData);
65751
66003
  }
65752
66004
 
65753
- this.Calculate=function(sourceData)
66005
+ this.CalculateByClose=function(sourceData)
65754
66006
  {
65755
66007
  var bindData=new ChartData();
65756
66008
  bindData.Data=[]
@@ -65761,13 +66013,139 @@ function KagiCalculate()
65761
66013
 
65762
66014
  if (!IFrameSplitOperator.IsNonEmptyArray(sourceData.Data)) return bindData;
65763
66015
 
65764
- var periodCount=this.ATR.Count;
66016
+ var brickSize=this.BrickSize;
66017
+ if (this.BrickSizeType==1) brickSize=this.ATR.BrickSize;
65765
66018
 
65766
66019
  var kItem=sourceData.Data[0];
65767
- this.LastData=HistoryData.Copy(kItem);
65768
- for(var i=1; i<sourceData.Data.length; )
66020
+ var kagiItem=HistoryData.Copy(kItem);
66021
+
66022
+ kagiItem.High=kagiItem.Low=kItem.Close;
66023
+ kagiItem.StartItem=kItem;
66024
+ kagiItem.Direction=0; //1 上 2=下
66025
+
66026
+ var T_MergeKData=function(dest, src)
65769
66027
  {
66028
+ dest.Vol+=src.Vol;
66029
+ dest.Amount+=src.Amount;
65770
66030
  }
66031
+
66032
+ var index=1;
66033
+ for( ;index<sourceData.Data.length;++index) //确定好方向
66034
+ {
66035
+ var kItem=sourceData.Data[index];
66036
+ if (kItem.Close>kagiItem.Close)
66037
+ {
66038
+ kagiItem.Direction=1;
66039
+ kagiItem.Close=kItem.Close;
66040
+ kagiItem.EndItem=kItem;
66041
+ kagiItem.High=kItem.Close;
66042
+ break;
66043
+ }
66044
+ else if (kItem.Close<kagiItem.Close)
66045
+ {
66046
+ kagiItem.Direction=2;
66047
+ kagiItem.Close=kItem.Close;
66048
+ kagiItem.EndItem=kItem;
66049
+ kagiItem.Low=kItem.Close;
66050
+ break;
66051
+ }
66052
+ }
66053
+
66054
+ var changeItem=null;
66055
+ for(++index; index<sourceData.Data.length;++index )
66056
+ {
66057
+ var kItem=sourceData.Data[index];
66058
+ if (kagiItem.Direction==1) //上
66059
+ {
66060
+ if (kItem.Close>=kagiItem.High)
66061
+ {
66062
+ kagiItem.Close=kItem.Close;
66063
+ kagiItem.High=kItem.Close;
66064
+ kagiItem.EndItem=kItem;
66065
+ changeItem=null;
66066
+ }
66067
+ else
66068
+ {
66069
+ if (!changeItem)
66070
+ {
66071
+ changeItem=HistoryData.Copy(kItem);
66072
+ changeItem.High=changeItem.Low=kItem.Close;
66073
+ }
66074
+ else
66075
+ {
66076
+ changeItem.Close=kItem.Close;
66077
+ if (changeItem.Low>kItem.Close) changeItem.Low=kItem.Close;
66078
+ }
66079
+
66080
+ if (Math.abs(changeItem.Low-kagiItem.High)>brickSize) //达到变盘点
66081
+ {
66082
+ bindData.Data.push(kagiItem);
66083
+
66084
+ var newItem=HistoryData.Copy(kItem);
66085
+ newItem.High=kagiItem.High;
66086
+ newItem.Low=kItem.Close;
66087
+ newItem.Direction=2; //1 上 2=下
66088
+ newItem.StartItem=kItem;
66089
+
66090
+ kagiItem=newItem;
66091
+ changeItem=null;
66092
+ }
66093
+ }
66094
+ }
66095
+ else if (kagiItem.Direction==2) //下
66096
+ {
66097
+ if (kItem.Close<=kagiItem.Low)
66098
+ {
66099
+ kagiItem.Close=kItem.Close;
66100
+ kagiItem.Low=kItem.Close;
66101
+ kagiItem.EndItem=kItem;
66102
+ }
66103
+ else
66104
+ {
66105
+ if (!changeItem)
66106
+ {
66107
+ changeItem=HistoryData.Copy(kItem);
66108
+ changeItem.High=changeItem.Low=kItem.Close;
66109
+ }
66110
+ else
66111
+ {
66112
+ changeItem.Close=kItem.Close;
66113
+ if (changeItem.High<kItem.Close) changeItem.High=kItem.Close;
66114
+ }
66115
+
66116
+ if (Math.abs(changeItem.High-kagiItem.Low)>brickSize) //达到变盘点
66117
+ {
66118
+ bindData.Data.push(kagiItem);
66119
+
66120
+ var newItem=HistoryData.Copy(kItem);
66121
+ newItem.High=kItem.Close;
66122
+ newItem.Low=kagiItem.Low;
66123
+ newItem.Direction=1; //1 上 2=下
66124
+ newItem.StartItem=kItem;
66125
+
66126
+ kagiItem=newItem;
66127
+ changeItem=null;
66128
+ }
66129
+ }
66130
+ }
66131
+ }
66132
+
66133
+ return bindData;
66134
+ }
66135
+
66136
+ //获取配置信息
66137
+ this.GetTitle=function()
66138
+ {
66139
+ if (this.BrickSizeType==1)
66140
+ {
66141
+ var text=`Kagi [ATR(${this.ATR.Count}), ${this.ATR.BrickSize}]`;
66142
+ }
66143
+ else
66144
+ {
66145
+ var text=`Kagi [Traditional]`;
66146
+ }
66147
+
66148
+ return text;
65771
66149
  }
65772
66150
  }
65773
66151
 
@@ -69375,12 +69753,17 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
69375
69753
  //删除某一个窗口的指标, bCallDestory=是否调用图形销毁函数
69376
69754
  this.DeleteIndexPaint=function(windowIndex, bCallDestroy)
69377
69755
  {
69378
- let paint=new Array(); //踢出当前窗口的指标画法
69379
- for(let i in this.ChartPaint)
69756
+ if (!this.Frame.SubFrame[windowIndex]) return;
69757
+ var subFrame=this.Frame.SubFrame[windowIndex].Frame;
69758
+ if (!subFrame) return;
69759
+
69760
+ var paint=[]; //踢出当前窗口的指标画法
69761
+ for(var i=0;i<this.ChartPaint.length; ++i)
69380
69762
  {
69381
- let item=this.ChartPaint[i];
69763
+ var item=this.ChartPaint[i];
69764
+ var bFind=(item.ChartFrame.Guid==subFrame.Guid || item.ChartFrame==subFrame);
69382
69765
 
69383
- if (i==0 || item.ChartFrame!=this.Frame.SubFrame[windowIndex].Frame)
69766
+ if (i==0 || !bFind)
69384
69767
  {
69385
69768
  paint.push(item);
69386
69769
  }
@@ -69393,7 +69776,7 @@ function KLineChartContainer(uielement,OffscreenElement, cacheElement)
69393
69776
  }
69394
69777
  }
69395
69778
 
69396
- var subFrame=this.Frame.SubFrame[windowIndex].Frame;
69779
+
69397
69780
  subFrame.YSpecificMaxMin=null; //清空指定最大最小值
69398
69781
  subFrame.IsLocked=false; //解除上锁
69399
69782
  subFrame.YSplitScale = null; //清空固定刻度
@@ -75127,6 +75510,7 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
75127
75510
  }
75128
75511
 
75129
75512
  var subFrame=new SubFrameItem();
75513
+ frame.FrameData.SubFrameItem=subFrame;
75130
75514
  subFrame.Frame=frame;
75131
75515
  if (i==0)
75132
75516
  subFrame.Height=20;
@@ -75213,6 +75597,7 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
75213
75597
  }
75214
75598
 
75215
75599
  var subFrame=new SubFrameItem();
75600
+ frame.FrameData.SubFrameItem=subFrame;
75216
75601
  subFrame.Frame=frame;
75217
75602
  subFrame.Height=10;
75218
75603
 
@@ -75284,12 +75669,16 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
75284
75669
  //删除某一个窗口的指标
75285
75670
  this.DeleteIndexPaint=function(windowIndex,bCallDestroy)
75286
75671
  {
75287
- let paint=new Array(); //踢出当前窗口的指标画法
75288
- for(let i in this.ChartPaint)
75672
+ var subFrame=this.Frame.SubFrame[windowIndex].Frame;
75673
+ if (!subFrame) return;
75674
+
75675
+ var paint=[]; //踢出当前窗口的指标画法
75676
+ for(var i=0;i<this.ChartPaint.length;++i)
75289
75677
  {
75290
- let item=this.ChartPaint[i];
75678
+ var item=this.ChartPaint[i];
75679
+ var bFind=(item.ChartFrame.Guid==subFrame.Guid || item.ChartFrame==subFrame);
75291
75680
 
75292
- if (i==0 || item.ChartFrame!=this.Frame.SubFrame[windowIndex].Frame)
75681
+ if (i==0 || !bFind)
75293
75682
  {
75294
75683
  paint.push(item);
75295
75684
  }
@@ -75303,7 +75692,7 @@ function MinuteChartContainer(uielement,offscreenElement,cacheElement)
75303
75692
  }
75304
75693
 
75305
75694
  //清空指定最大最小值
75306
- var subFrame=this.Frame.SubFrame[windowIndex].Frame;
75695
+
75307
75696
  subFrame.YSpecificMaxMin=null;
75308
75697
  subFrame.IsLocked=false; //解除上锁
75309
75698
  subFrame.YSplitOperator.SplitType=subFrame.YSplitOperator.DefaultSplitType; //还原Y坐标分割模式
@@ -80626,6 +81015,7 @@ function KLineChartHScreenContainer(uielement)
80626
81015
  }
80627
81016
 
80628
81017
  var subFrame=new SubFrameItem();
81018
+ frame.FrameData.SubFrameItem=subFrame;
80629
81019
  subFrame.Frame=frame;
80630
81020
  if (i==0)
80631
81021
  subFrame.Height=20;
@@ -80770,6 +81160,7 @@ function MinuteChartHScreenContainer(uielement)
80770
81160
  }
80771
81161
 
80772
81162
  var subFrame=new SubFrameItem();
81163
+ frame.FrameData.SubFrameItem=subFrame;
80773
81164
  subFrame.Frame=frame;
80774
81165
  if (i==0)
80775
81166
  subFrame.Height=20;