2014-02-11 63 views
1

我想知道是否有像'編輯'的組件,但只是爲了數字,所以我可以在我的代碼中使用.value函數。 我的教科書說我必須編寫一個程序,當用戶輸入一個數字並點擊執行按鈕時,必須確定函數的結果。 這些功能是:Trunc,round,frac,sqr和sqrt。 我必須輸入值,看起來像一個'編輯',但每當我在我的代碼中使用.value,它給我一個錯誤說:Undeclared identifier: 'value'。雖然它在我使用'SpinEdit'時起作用。 原諒我真的很厚,我確實有嚴重的胸部和鼻竇感染,發燒相當嚴重,所以我現在還在別的地方。 謝謝! 哦,順便說一下,我也使用了'MaskEdit'組件,但它仍然給我提供相同的錯誤德爾福,編輯中使用數字

回答

1

對於編輯控件,沒有屬性名爲Value,這是編譯器告訴你的。對於編輯控件,您需要的屬性是Text。這是包含編輯控件內容的string。您需要使用StrToFloatTryStrToFloat才能轉換爲真實類型。

如果您願意,可以使用屏蔽編輯,並在輸入時驗證輸入。 TMaskEdit控件來自TCustomEdit,並且用於訪問其內容的屬性再次爲Textstring

我個人不喜歡那樣,因爲我不認爲它給用戶提供了最清晰的反饋。爲一般浮點值編寫掩碼也很困難。我自己,我會驗證程序需要從字符串轉換爲真實的點。

+0

iAmount:= TryStrToFloat(edtInput.value); - 這是我目前的代碼,但它仍然給我同樣的錯誤 –

+0

@link更仔細地閱讀我的答案。沒有「價值」。這就是編譯器所說的。它是'文字'。 –

+0

也許我應該回到這一點,一旦我感覺好一點,這對我來說目前太困惑了。否則,我現在只需要使用spineit。 –

0

那麼,既然您問是否有像這樣的編輯組件,我使用TMS AdvEdit。它處理整數和浮點數的過程非常體面。如果你負擔得起,這真的很有用。

它具有.FloatValue.IntValue用於讀取和寫入該值的屬性,以及指定接受哪種輸入類型的EditType