Ja už neviem ako ináč Ti to mám polopatisticky napísať...
formátuje to tak, ako je nastavené lokálne prostredie vo Windows !!!Format() potrebujem, aby formátoval pre Slovensko
áno je nejaká možnosť - použiješ TFormatSettings !!!či je nejaká možnosť ako vynútiť vo Format() formátovanie desatinných čísel s desatinnou bodkou
function Format ( Const Formatting : string; Const Data : array of const; FormatSettings : TFormatSettings ) : string;
niekoľko príkladov som napísal, stále nechápem čo je pre Teba zložité: "Ak mám meniť nastavenia, tak je pre mňa rýchlejšie použiť Str() upravené pre použitie ako funkcia."function Float2String(r: Real): String;
var
fs: TFormatSettings;
begin
fs.DecimalSeparator:='.';
Result := FormatFloat('### ###.##', r, fs); //môžeš použiť miesto FormatFloat aj Tvoje obľúbené Format
end;
Ako desatinná bodka sa použije len v tejto upravenej funkcii, nikde inde to nebude mať vplyv !!!Ak je pre Teba rýchlejšie a jednoduchšie použiť Str(), tak ho používaj, ukázal som Ti ako sa to dá pomocou Format resp. FormaFloat, ale ak nechápeš, alebo nie si schopný pochopiť čo Ti tu stále vysvetľujem, potom je mi ľúto.
Edit:
Skús si sám:
var
fs : TFormatSettings;
begin
fs.DecimalSeparator:='.';
ShowMessage(Format('Fixed = %f', [12345.678])); //vypíše podľa lokálneho nastavenia Windows u mňa je to čiarka
ShowMessage(Format('Fixed = %f', [12345.678],fs)); //vypíše sa s bodkou, pretože som použil ako parameter fs (TFromatSettings - desatinný odeľovač=bodka
ShowMessage(Format('Fixed = %f', [12345.678])); //vypíšeš opäť s čiarkou
end;