Como você arredondar números em qml para duas casas decimais?

3

Eu tenho esses números reais ridiculamente longos, como 33.088117576394794, e estou tentando convertê-los em duplos (duas casas decimais). Então, neste caso, eu quero 33,09.

Como você faz isso no QML?

    
por Akiva 03.10.2014 / 13:09

1 resposta

7

Você pode usar quase toda a sintaxe do javascript no QML (consulte link ).

O método mais rápido é Math.round(<NUM> * 100) / 100

Mas (<NUM>).toFixed(2) funciona (mas é muito lento de acordo com esta pergunta em SO)

O seguinte trecho de código apresenta ambas as implementações:

import QtQuick 2.0
import Ubuntu.Components 0.1

MainView {
    id: root
    width: units.gu(50)
    height: units.gu(80)

    property var my_number: Math.round(33.088117576394794 * 100) / 100;
    property var my_number2: (33.088117576394794).toFixed(2);

    Component.onCompleted: {
        console.log(my_number)
        console.log(my_number2)
    }
}
    
por Sylvain Pineau 03.10.2014 / 14:33