2015-07-13 187 views
2

我正在創建一個生成條形圖的程序。昨天,代碼正常編譯並沒有出現小故障。但是,當我嘗試運行它時,會發生讀取地址錯誤。這段代碼是給的問題:TeEngine.pas找不到

for K:=0 to Length(arrIncomes) - 1 do 
    IncomeBarS.AddXY(arrIncomes[k].dDate,arrIncomes[k].rAmount); 

當試圖查看的源代碼的"AddXY"過程中,IDE提供了錯誤:"Unable to locate file 'TeEngine.pas'"。 Google無法幫助我。有誰知道如何解決這一問題?我正在使用Delphi 2010

回答

1

Delphi提供的TeeChart免費版本不包含源代碼。本質上你遇到的信息是告訴你。 TeeChart的完整商業版本隨附源代碼。

看着你的代碼,它似乎不太可能是TeeChart中的問題。我期望這個問題可以在你的代碼中找到。

+0

我想是這樣。但我的代碼運行沒有問題。它突然開始給出沒有明顯原因的問題 – Marnu123

+0

會有一個原因。我認爲你的問題編輯是相當不公平的。在我看來,我回答了你提出的問題,現在你試圖通過編輯來問另一個問題。 –

+0

如果它解決了問題,我會接受你的答案,但代碼仍然無法正常工作。這兩個代碼段幾乎在所有方面都是相同的,除了一個有效,另一個沒有。 – Marnu123

0

當您沒有pas文件但僅編譯DCU時顯示此消息。 換句話說,你沒有組件的源代碼。

不管怎麼說,聲明應該是如下:

Function AddXY(Const AXValue,AYValue:Double; Const ALabel:String=''; 
        AColor:TColor=clTeeColor):Integer; virtual; 

Function AddY(Const AYValue:Double; Const ALabel:String=''; 
        AColor:TColor=clTeeColor):Integer; 

看來你arrIncomes記錄只有金額和日期記錄,所以你的情況,你可以使用阿迪,而不是AddXY功能:​​

for K:=0 to Length(arrIncomes) - 1 do 
    IncomeBarS.AddY(arrIncomes[k].rAmount,DateToStr(arrIncomes[k].dDate)); 
+0

您能否解釋如何交換X和Y參數將解決運行時錯誤? –

+0

X軸屬於TDateTime類型。 – Marnu123

+0

@DavidHeffernan我剛編輯過這個例子..對不起! –

1

我正在從Delphi 2007(VER185)轉換到Delphi XE6。這是我的解決方案:

{$IFDEF VER185} 
    TeEngine, 
{$ELSE} 
    VCLTee.TeEngine, VclTee.TeeGDIPlus, 
{$ENDIF}