我想顯示在網格中的貨幣價值,但我不希望被顯示的貨幣符號:如何使用Delphi的AsCurrency顯示貨幣沒有貨幣符號?
if fPreferences.WorksheetFormat = 'Numeric' then
begin
CurrencyString := '';
Value := FieldByName('UnitList').AsCurrency;
end else
Value := CurrToStrF(FieldByName('UnitList').AsCurrency, ffCurrency, 2, langFormat);
的問題是,它仍然顯示的貨幣符號。我在這裏做錯了什麼?我不認爲我可以使用CurrToStrF,因爲我需要網格將數字導出爲excel,而不是字符串。或者,有沒有什麼辦法可以使用AsFloat,但是必須有小數位? (100.00)
但我試圖格式化值將是一種貨幣,而不是將設置與CurrToStrF值 - 我如何更改貨幣值不顯示貨幣符號? – croceldon 2010-03-31 13:25:29
不知道我明白...貨幣符號沒有鏈接到貨幣值,而是鏈接到FormatSettings,或者是默認情況下默認使用的貨幣符號,而不是特定的貨幣符號或像langFormat.CurrencyString這樣的特定符號。因此,如果您的值是貨幣,則它將保留一個貨幣,但默認情況下會根據全局CurrencyString顯示。如果您將它從「$」更改爲「@」,那麼您的價值將像以前一樣顯示爲@ 12.34而不是$ 12.34。 – 2010-03-31 17:02:41