System.ConvUtils.Convert
Delphi
function Convert(const AValue: Double; const AFrom, ATo: TConvType): Double;
function Convert(const AValue: Double; const AFrom1, AFrom2, ATo1, ATo2: TConvType): Double;
C++
extern DELPHI_PACKAGE double __fastcall Convert(const double AValue, const TConvType AFrom, const TConvType ATo)/* overload */;
Propriétés
Type | Visibilité | Source | Unité | Parent |
---|---|---|---|---|
function | public | System.ConvUtils.pas System.ConvUtils.hpp |
System.ConvUtils | System.ConvUtils |
Description
Convertit une mesure d'un ensemble d'unités vers un autre.
Appelez Convert pour convertir la valeur AValue
d'un ensemble d'unités de mesure vers un autre.
Avec la première syntaxe, le paramètre AFrom
spécifie les unités de mesure en cours pour AValue
. Convert renvoie la mesure correspondante dans les unités spécifiées par ATo
. Par exemple, la ligne suivante convertit une mesure de température de degrés Fahrenheit en degrés Kelvin :
TempInKelvin := Convert(StrToFloat(Edit1.Text), tuFahrenheit, tuKelvin);
TempInKelvin = Convert(StrToFloat(Edit1->Text), tuFahrenheit, tuKelvin);
Avec la deuxième syntaxe, le paramètre AFrom1
et le paramètre AFrom2
spécifient les unités en cours pour AValue
, où les unités pour AValue
sont AFrom1
par AFrom2
. Convert renvoie la mesure correspondante dans les unités ATo1
et ATo2
. Par exemple, l'appel suivant convertit des miles par gallon en kilomètres par litre :
nKPL := Convert(StrToFloat(Edit1.Text), duMiles, vuGallons, duKilometers, vuLiter);
double nKPL = Convert(StrToFloat(Edit1->Text), duMiles, vuGallons, duKilometers, vuLiter);
Les unités spécifiées par AFrom
et ATo
, AFrom1
et ATo1
, et AFrom2
et ATo2
doivent appartenir à la même famille de conversion (elles doivent mesurer la même chose). Vous pouvez vérifier si deux valeurs de TConvType appartiennent à la même famille de conversion en appelant CompatibleConversionTypes. Si les unités ne sont pas compatibles, Convert déclenche une exception EConversionError.
Remarque : L'unité StdConvs définit plusieurs familles de valeurs TConvType. Voir variables de famille de conversion pour une liste des familles prédéfinies d'unités de mesure avec les unités de mesure dans chaque famille. De plus, vous pouvez recenser vos propres familles de conversion et unités à l'aide des fonctions RegisterConversionType et RegisterConversionFamily.
Remarque : Convert effectue sa conversion en convertissant
AValue
des unitésAFrom
vers les unités de base de sa famille de conversion, puis des unités de base vers les unitésATo
. Si les unitésAFrom
et les unitésATo
sont très différentes des unités de base de la famille de conversion, cela peut conduire à des problèmes tels qu'un dépassement de capacité. Vous pouvez diminuer ces problèmes en recensant vos propres familles de conversion qui seront des ensembles plus restreints d'une famille de conversion large.