Start a new topic

Formatowanie i operacja na danych w polu tekstowym

Czy możliwe jest formatowanie i/lub operacje na danych w polu tekstowym?



Np zmienic format liczb na całkowite? 

tekst.png
(981 Bytes)

Nie wiem czy inni też, ale ja nie za bardzo rozumiem pytanie. Co chcesz uzyskać?

Chcę np wyświetlić wartość na wizualizacji, nie jako: 12,2312

tylko jako 12 - liczbę całkowitą


Lub też wykonać operacje na zmiennej, przykładowo:
mając wartość ostatniego czasu uruchomienia kalendarza calendar->SinceLastRun
Wyświetlić jako godziny, zamiast minut.

Masz na myśli komponent text w aplikacji mobilnej? Możesz użyć tego co oferuje lua. U mnie to śmiga.

W źródle masz pewnie tak:
NAZWA_CLU->NAZWA_MODUŁU->Value


A wystarczy mały myk:

NAZWA_CLU->NAZWA_MODUŁU->math.ceil(Value)


I masz zaokrąglone w górę. Jak chcesz w dół, to math.floor. generalnie polecam zapoznać się z biblioteką lua bo nieźle rozszerza podstawe grentona.

Próbuję w ten sposób zaokrąglić wartość temperatury ale po dołożeniu math.floor(Value) w komponencie text w visual builder znika mi cała wartość. Jak robię to przez skrypt i zmienną globalną to działa. Jakiś pomysł? 

A wrzucasz math.floora w Źródło, pierwszą zakładkę, czy ostatnią zakładkę Parametry>Parametry obiektu>Text?


Jak w pierwszą to musi działać, jak w ostatnią to ma prawo nie działać.

 Wrzucam w zakładkę źródło, może wersja OM ma znaczenie albo system operacyjny.

Super, ale ...

math.floor(Value)math.ceil(Value) uważam za mało przydatne do wyświetlania temperatury na SmatrPanelu z racji uzyskiwanej niedokładności, tj. jeśli temperatura wynosi 23,9 to po użyciu funkcji math.floor na panelu pojawi się 23 stopnie - czyli przekłamanie o prawie jeden stopień. Niby niewiele, ale po co zniekształcać dane ?


Znacie może jakiś skrypt do zaokrąglania liczby do jednego lub dwóch liczb po przecinku ?

tumarcinus@gmail.com nie wiem, czy jest taka funkcja w bibliotece math, ale możesz takie coś uzyskać poprzez bibliotekę string.


Wyszukać w stringu pozycję kropki funkcją string.find, a potem wyciąć interesującą Cię ilość znaków stringa funkcją string.sub.


Pzdr.

a nie można tak:

wartość początkowa: 12,2312 i chcemy ją przedstawić jako 12,2, tak?


Mnożymy przez 10:12,2312*10=122,312

Zaokrąglamy np. w dół: 122

Dzielimy przez 10: 12,2

Jak tak zrobisz, to w OMie prawdopodobnie dostaniesz 12,20. Więc opcja Krzysztofa dużo lepsza.

Hej Panowie,

a nie lepiej zrobić "PRINT FLOAT" w miejscu gdzie wśród tekstu chcesz mieć zmienną?

Login or Signup to post a comment