2017-03-03 3 views
0

Je fais un simple projet de curseur juste pour comprendre comment les curseurs fonctionnent dans QML. J'utilise le curseur de Qt.labs.controls J'ai regardé leur documentation et il n'y a que deux méthodes.Comprendre le curseur QML

void decrease() et void increase()

Tout ce que je veux faire est d'afficher la valeur correspondant à la position du curseur. Je ne trouve aucun signal ou méthode qui me dit si la position actuelle a changé ou quelque chose comme ça. Est-ce que je cherche au bon endroit? Ou Dois-je tout écrire de zéro pour que mon projet simple fonctionne?

Mise à jour: J'utilise QT5.6 devrais-je utiliser la version supérieure pour cette

Répondre

1

Vous avez spécifiquement mentionné les laboratoires, ce qui signifie que vous utilisez probablement QtQuick 2. Il y a eu beaucoup de développements importants des composants Controls depuis Qt5.6, donc il serait conseillé de mettre à niveau si l'intention est de continuer à utiliser QtQuick 2.

http://doc.qt.io/qt-5/qml-qtquick-controls2-slider.html donne les derniers documents. Notez que le widget a été mis à jour dans Qt5.7 et que la commande d'importation en cours est import QtQuick.Controls 2.1.

Le dernier Qt est 5.8, dans lequel le curseur prend en charge à la fois position et value.

  • position: la position du curseur, de 0 à 1.
  • value
  • : la valeur de sortie mappé à partir de position sur la balance [from, to]
0

Vous pouvez utiliser la propriété de la valeur de ce contrôle. Chaque propriété qml a un gestionnaire de signal implicite. Pour ex: pour la propriété value, vous aurez le signal onValueChanged. Pour votre projet simple, vous pouvez également utiliser le contrôle du curseur à partir de QtQuick.Controls. Il suffit d'importer QtQuick.Controls 1.4 dans votre fichier qml.