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

如何取得動態產生的Series的值??

尚未結案
lovewoman
一般會員


發表:4
回覆:7
積分:2
註冊:2003-09-18

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-06-15 21:48:50 IP:219.68.xxx.xxx 未訂閱
各位前輩大家好 本人正在用Delphi 6.0寫一個圖形程式 series1 是原始資料的曲線 series2 是series1原始資料的5日移動平均線 也就是Series2的值來源是由Series1產生 且程式也畫出Series2了!! series2是TeeChart Pro7的內建函式產生的 現在我寫的程式是當滑鼠放在Series1的某個點時 我想在某個Lebel顯示Series2在同一點相對映的值... 但我一直找不到取得Series2的值的方法 麻煩各位前輩告知一下....3Q 我的程式如下 procedure TKlineP.DBChart1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); var tmp,n5:integer; begin tmp:=series1.Clicked(x,y); if tmp<>-1 then with series1 do begin n5:=series2.????????????? <======不知要寫什麼東東...... Label1.Caption:='5日: ' CurrToStr(N5); end; end; 發表人 - lovewoman 於 2004/06/15 23:12:51
Fishman
尊榮會員


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

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-06-16 09:14:52 IP:210.65.xxx.xxx 未訂閱
hi lovewoman,    試試 n5:=series2.YValue[Tmp] 或參考 http://delphi.ktop.com.tw/topic.php?topic_id=50435 ---------------------------------- 小弟才疏學淺,若有謬誤尚請不吝指教 ----------------------------------
------
Fishman
lovewoman
一般會員


發表:4
回覆:7
積分:2
註冊:2003-09-18

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-06-16 10:52:23 IP:219.68.xxx.xxx 未訂閱
謝謝這位大哥的說明 但是這樣好像不行 語法也錯誤.... 這個方法我也有試 但就是不行....
Fishman
尊榮會員


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

發送簡訊給我
#4 引用回覆 回覆 發表時間:2004-06-16 11:34:35 IP:210.65.xxx.xxx 未訂閱
Hi lovewoman,    那你拉一個 Memo 試試以下語法(D7 + Tchart)    
procedure TForm1.Chart1MouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
var
    I,J : Integer;
    AValueIndex : Integer;
    TmpSeies : TChartSeries;
begin
    Memo1.Lines.Clear;
    FOR I := 0 TO TChart(Sender).SeriesList.Count - 1 DO
        BEGIN
            TmpSeies := TChart(Sender).SeriesList.Series[I];
            AValueIndex := TmpSeies.GetCursorValueIndex;                IF AValueIndex > -1 THEN
                BEGIN
                    FOR J := 0 TO TChart(Sender).SeriesList.Count - 1 DO
                        BEGIN
                            TRY
                                Memo1.Lines.Add(FloatToStr(TChart(Sender).SeriesList.Series[J].YValue[AValueIndex]));
                            EXCEPT
                            END;
                        END;
                    TChart(Sender).Hint := FloatToStr(TmpSeies.YValue[AValueIndex]);
                    TChart(Sender).ShowHint := True;
                    EXIT;
                END
            ELSE
                BEGIN
                    TChart(Sender).ShowHint := False;
                    TChart(Sender).Hint := '';
                END;
        END;
end;
---------------------------------- 小弟才疏學淺,若有謬誤尚請不吝指教 ----------------------------------
------
Fishman
lovewoman
一般會員


發表:4
回覆:7
積分:2
註冊:2003-09-18

發送簡訊給我
#5 引用回覆 回覆 發表時間:2004-06-16 14:28:06 IP:219.68.xxx.xxx 未訂閱
還是有問題 且是語法錯誤....    錯誤如下    
引言: Hi lovewoman, 那你拉一個 Memo 試試以下語法(D7 Tchart)
procedure TForm1.Chart1MouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
var
    I,J : Integer;
    AValueIndex : Integer;
    TmpSeies : TChartSeries;
begin
    Memo1.Lines.Clear;
    FOR I := 0 TO TChart(Sender).SeriesList.Count - 1 DO
        BEGIN
            TmpSeies := TChart(Sender).SeriesList.Series[I];
                                                  ----------=====>沒這個東東....                AValueIndex := TmpSeies.GetCursorValueIndex;                IF AValueIndex > -1 THEN
                BEGIN
                    FOR J := 0 TO TChart(Sender).SeriesList.Count - 1 DO
                        BEGIN
                            TRY
                                Memo1.Lines.Add(FloatToStr(TChart(Sender).SeriesList.Series[J].YValue[AValueIndex]));
                            EXCEPT
                            END;
                        END;
                    TChart(Sender).Hint := FloatToStr(TmpSeies.YValue[AValueIndex]);
                    TChart(Sender).ShowHint := True;
                    EXIT;
                END
            ELSE
                BEGIN
                    TChart(Sender).ShowHint := False;
                    TChart(Sender).Hint := '';
                END;
        END;
end;
---------------------------------- 小弟才疏學淺,若有謬誤尚請不吝指教 ---------------------------------- < face="Verdana, Arial, Helvetica">
lovewoman
一般會員


發表:4
回覆:7
積分:2
註冊:2003-09-18

發送簡訊給我
#6 引用回覆 回覆 發表時間:2004-06-16 15:01:10 IP:219.68.xxx.xxx 未訂閱
大哥 你好... 我豬頭 你第一個方法就可以了... 害你浪費那麼多時間跟我耗 抱歉... 謝謝你不吝教導... 3Q 發表人 - lovewoman 於 2004/06/16 15:04:58
系統時間:2024-05-18 15:17:15
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!