線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1497
推到 Plurk!
推到 Facebook!

Tchart(Tseries) 圖上點 顯示的問題

尚未結案
seedbcc
高階會員


發表:232
回覆:272
積分:105
註冊:2003-12-10

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-11-12 10:41:19 IP:221.169.xxx.xxx 未訂閱
如上圖所示 圖上紅圈所示,使用者點到 線一樣會顯示數據 我如何讓使用者 只有在 點的附近範圍才顯示 數據 以下是我的程式碼
procedure TFrm_Chart.Chart_UpMouseMove(Sender: TObject;
  Shift: TShiftState; X, Y: Integer);
begin
  inherited;
  AValueIndex:=Series_Up.GetCursorValueIndex;
  if (Chart_Up.Series[0].Count = 0) or 
     (Chart_Up.Series[0].Count = 0)   then   //無資料顯示時不處理
    Exit;
  if Not PtInRect(TChart(Sender).ChartRect, Point(X, Y)) 
     then  Exit; //滑鼠不落在 Chart 邊界內不考慮
    
  if AValueIndex>-1 then
  begin
    lbl_CtPointValue.Visible:=True;
    lbl_CtPointValue.Top    :=Y+5;//+20;
    lbl_CtPointValue.Left   :=X-20;//-30;
    lbl_CtPointValue.Caption
           :=FloatToStr(Series_Up.YValue[AValueIndex])+' ';
  end
  else
    lbl_CtPointValue.Visible:=False;    END;
Fishman
尊榮會員


發表:120
回覆:1949
積分:2163
註冊:2006-10-28

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-11-17 09:58:24 IP:210.65.xxx.xxx 未訂閱
Hi seedbcc,    試試這樣作,看看可不可行
procedure TForm1.Chart1MouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
var
    AValueIndex : Integer;
    ValX,ValY : Integer;
begin
  Memo1.Lines.Clear;
  AValueIndex := Series1.GetCursorValueIndex;
  IF AValueIndex > -1 THEN
    BEGIN
      ValX := Series1.CalcXPosValue(Series1.XValue[AValueIndex]);
      ValY := Series1.CalcYPosValue(Series1.YValue[AValueIndex]);
      If (Abs(ValX - X) <= Series1.Pointer.HorizSize) and (Abs(ValY - Y) <= Series1.Pointer.VertSize) then
        Edit1.Text := '('   FloatToStr(Series1.XValue[AValueIndex])   ','   FloatToStr(Series1.YValue[AValueIndex])   ')';
    END
  ELSE
    BEGIN
      Edit1.Text := '';
    END;
end;
---------------------------------- 小弟才疏學淺,若有謬誤尚請不吝指教 ----------------------------------
------
Fishman
seedbcc
高階會員


發表:232
回覆:272
積分:105
註冊:2003-12-10

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-11-19 12:26:24 IP:61.224.xxx.xxx 未訂閱
thanks
系統時間:2024-05-17 11:21:54
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!