|
Zapewne zauważyłeś, że przy próbie wyświetlenia liczby w komponencie Label pokazuje ci się błąd. Dzieje się tak dlatego, że Label przechowuje tekst a nie liczby. Aby je wyświetlić należy zamienić je na tekst. Oczywiście nic nie stoi na przeszkodzie, by zmienić tekst na liczbę. Można także konwertować inne typy danych (np: kolory). Poniższa tabelka przedstawia funkcje konwertujące: IntToStr - zamienia liczbę całkowitą na tekst, np: IntToStr(213); StrToInt - zamienia tekst na liczbę całkowitą, np: StrToInt('213'); FloatToStr - zamienia liczbę zmiennoprzecinkową na tekst, np: FloatToStr(324,253); StrToFloat - zamienia tekst na liczbę zmiennoprzecinkową, np: StrToFloat('324,253); ColorToString - zamienia kolor na tekst, np: ColorToString(clWhite); StringToColor - zamienia tekst na kolor, np: StringToColor('clWhite'); DateToStr - zamienia datę na tekst, np: DateToStr(Date); StrToDate - zamienia tekst na datę, np: StrToDate('04-01-02'); TimeToStr - zamienia czas na tekst, np: TimeToStr(Time); StrToTime - zamienia tekst na czas, np: StrToTime('19:45'); Istnieje też inna metoda konwersji. Służy do tego funkcja Format. Funkcja ta potrzebuje podstawowego tekstu, zmiennych i tablicy zmiennych. Zapewne opis mówi ci, że jest to coś trudnego, ale to ja nie potrafie tłumaczyć rzeczy prostych :) Najlepiej będzie jak przejdziemy do przykładu, w którym wyświetlimy tekst z dwiema liczbami: Format('Liczba %d i liczba %d', [10, 34]); Znacznik %d jest zamieniany na tekst, a jego wartość zapisana jest w tabeli. Poniżej znajduje się tabelka z opisem często używanych znaczników: %d - liczba całkowita zamieniana jest na tekst %x - liczba typu integer zamieniana jest na tekst zapisujący liczbę w postaci szesnastkowej %e - liczba zmiennoprzecinkowa konwertowana jest na liczbę w postaci wykładniczej %f - liczba zmiennoprzecinkowa przekształcana jest na tekst Oczywiście nic nie stoi na przeszkodzie by sformatować liczbę na kilka sposobów: Format('Liczba %d w postaci szesnastkowej wygląda tak %x', [154, 154]); ...powrót |