2013-02-14 24 views
2

我試圖在我的Stringgrid上繪製一些圖形。它只有140x140 rowxCol,只有數字。 Tchart應該在X軸上顯示單元座標,在y軸上顯示這些值。在Tchart上繪製stringgrid值

我使用這個代碼:

procedure TForm2.Button2Click(Sender: TObject); 
var 
    Count: Integer; 
begin 
    with StringGrid1 do 
    begin 
    for Count := 0 to RowCount-1 do 
    begin 
     Chart1.Series[0].AddXY(StrToFloat(Cells[0, Count]), 
          StrToFloat(Cells[1, Count]), '', clTeeColor); 
    end; 
    end; 
end; 

但我不斷收到此錯誤:'' is not a floating point value.

+2

我們看不到你的字符串網格的數據,但你一個空字符串明顯轉換爲浮點值。在你傳遞給'Cells'屬性的座標上檢查字符串網格中的值。請注意,傳遞給「Cells」的索引是基於0的索引,幷包含固定的單元格。 – TLama 2013-02-14 01:12:27

+0

你爲什麼不填寫你填滿網格的來源圖表?控件用於顯示不存儲它們的數據。將數據保存在擴展數組中,並從該數組中填充網格和圖表。 – 2013-02-14 01:15:02

+0

這些值是從Excel電子表格中導入的,很抱歉沒有說出來,但我認爲只要值在字符串中就沒有關係。 – Ammadeux 2013-02-14 01:20:50

回答

7

你一個空字符串轉換爲浮點值,是什麼自然是不可能。我的猜測是你錯誤的座標傳遞給Cells屬性。請注意,它們都是基於0的,並且它們也包含字符串網格的固定部分。這裏的座標Cells打印:

enter image description here

+2

示範!比試圖解釋什麼*固定*行,科爾是用文字更好.. – 2013-02-14 01:39:41

+0

那麼我該如何開始從[1,1]循環? – Ammadeux 2013-02-14 09:08:14

+0

這就是你應該知道的。你已經用數據填充了字符串網格。這只是我的猜測,你已經從座標開始循環,固定列和/或行在哪裏,但是空字符串,轉換失敗可能在網格中的任何位置。 – TLama 2013-02-14 09:45:59