StringFormat - metoda objektu Pm
Popis:
Zápis pole hodnot do řetězce podle daného formátovacího předpisu.
Tato metoda je zastaralá (ale funkční) a je lepší použít metodu
PmFormat.Format.
Syntaxe:
String StringFormat(String sFormat, Variant vParams)
Parametry:
sFormat | (String) Formátovací předpis zapsaný v konvenci jazyka C. Viz Formátovací předpis jazyka C. |
vParams | (Variant) Parametr je buď:
- Elementární datový typ (Integer, Double, String) v případě, že v sFormat je formát pro jednu hodnotu, nebo
- Pole hodnot (Array) v případě, že v sFormat je formát pro více hodnot najednou. |
---|
Poznámka:
Tato metoda je funkční i v
Makro výraz $.expr a v události
onDraw objektu
PmgCanvas.
Tato metoda je funkční i ve
Web obrazech.
HexaString (řetězec v hexadecimálním formátu) lze používat dvojím způsobem:
1) Zobrazení čísla v hexadecimální soustavě, kde vyšší řády jsou vlevo. Odpovídá uložení v paměti
Big Endian. Jedná se o převod hodnoty čísla na řetězec (a obráceně) pomocí formátovacího řetězce. Pro využití
HexaString tímto způsobem se doporučuje používat objekt
PmFormat.
2) Zakódování obsahu části paměti o určité velikosti (např. 1B, 2B, 4B, ...) v hexadecimální soustavě. Potom záleží na způsobu uložení čísla v paměti. Na procesorech
Intel a
AMD (architektura
x86 nebo
x64) se používá tzv.
Little Endian, kde nižší řády jsou vlevo. Pro využití
HexaString tímto způsobem se doporučuje používat výhradně objekt
PmBuffer, který umí pracovat s
Little Endian i
Big Endian.
Příklad1:
Formátování jedné hodnoty typu Integer pro hexadecimální zobrazení
JavaScriptVBScriptVyber a zkopíruj do schránky
var nVal = 1024;
var sVal = Pm.StringFormat("%05x", nVal);
Dim nVal, sVal
nVal = 1024
sVal = Pm.StringFormat("%05x", nVal)
Příklad2:
Formátování více hodnot najednou
JavaScriptVBScriptVyber a zkopíruj do schránky
var n1 = 11.2;
var n2 = 1002.4;
var aData = Pm.CreatePmArray().Array1(n1, n2);
var sVal = Pm.StringFormat("Teplota=%3.2f, Tlak=%5.1f", aData);
Dim n1, n2, aData, sVal
n1 = 11.2
n2 = 1002.4
aData = Array(n1, n2)
sVal = Pm.StringFormat("Teplota=%3.2f, Tlak=%5.1f", aData)