簡體   English   中英

聲明要從字符串變量轉換的單位

[英]Declare units to Convert from a string variable

我正在delphi中使用Convert函數來編寫一個簡單的多設備應用程序,該應用程序將允許我轉換測量值。

該表格由2個組合框和en組成。 選擇“轉換自”,“轉換為”和一個值。

所以在我的組合框中,我選擇單位,然后將組合框的值傳遞給2個全局字符串

  fromType := cbConvFrom.Selected.Text;
  toType := cbConvTo.Selected.Text;

返回以下內容。

cbConvFrom returns duCentimeters
cbConvTo returns duMeters

但是,當我嘗試將這些值傳遞給Convert函數時,它們顯然不起作用,因為我試圖將String作為TConvType傳遞,如下所示

conversion := Convert(StrToFloat(editValue.Text), fromType, toType);

我如何將這些字符串用作TConvType,以便上面的代碼可以正常工作。

使用轉換類型的字符串表示形式刪除並使用描述代替。 使用ConvTypeToDescription從類型的注冊中獲取描述。 例如:

ComboBox1.Items.Add(ConvTypeToDescription(duMeters));
ComboBox1.Items.Add(ConvTypeToDescription(duCentimeters));

然后,您可以使用反函數來提供轉換功能。

DescriptionToConvType(ComboBox1.Items[ComboBox1.ItemIndex], fromType);
DescriptionToConvType(ComboBox2.Items[ComboBox2.ItemIndex], toType);
conversion := Convert(StrToFloat(editValue.Text), fromType, toType);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM