IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Qt Discussion :

Déplacement du curseur du QSlider


Sujet :

Qt

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Rien
    Inscrit en
    Octobre 2010
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Rien

    Informations forums :
    Inscription : Octobre 2010
    Messages : 25
    Par défaut Déplacement du curseur du QSlider
    Bonjour ^^

    Voilà j'ai décidé de vous posez la question suivante pour le logiciel que je code actuellement:
    Comment fait on pour que le QSlider n'avance pas d'un "cran" quand on clique dessus mais qu'il avance jusqu'à la valeur située à l'endroit du clic?

    J'espère m'être bien exprimé ^^'

    Merci d'avance à tous de votre aide

    PS: au début mon logiciel était en Java et j'avais posé cette question ici et la solution qu'on m'avait indiquée marchait (je donne le lien au cas où ça puisse vous aidez à m'aider :p )

    EDIT: problème résolu:
    Le problème a été résolu avec un peu de réflexion sur le calcul de la valeur du QSlider en fonction de x() (ou en fonction de y() si le QSlider est vertical) ^^

    Voilà le code la solution:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    void Slider::mousePressEvent(QMouseEvent *event)
    {
    	float slidermargin = 8.0; // valeur correspondant à la petite marge entre le début de l'"objet" en lui même et le début des valeurs du QSlider (multipliée par 2)
    	float xforslide = event->x() - slidermargin + (event->x()*(slidermargin*2.0))/maximum();
    	float valueToSet = xforslide*maximum()/(width() - (slidermargin*2.0));
     
    	setValue(valueToSet);
    }

    La "marge" dont la largeur est celle de la largeur du trait vertical rouge (voir image en pj)

    Merci quand même à vous
    Images attachées Images attachées  

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Déplacement du curseur
    Par sylvain591 dans le forum Excel
    Réponses: 2
    Dernier message: 22/10/2008, 14h56
  2. Déplacement du curseur au clavier
    Par mout1234 dans le forum Excel
    Réponses: 4
    Dernier message: 12/09/2008, 10h03
  3. Réponses: 6
    Dernier message: 20/02/2007, 18h39
  4. [PDO] Déplacement du curseur d'un recordset
    Par dorian53 dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 08/11/2006, 11h52
  5. Réponses: 3
    Dernier message: 19/11/2004, 15h48

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo