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

MFC Discussion :

Pb d'echelle avec un Slider


Sujet :

MFC

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    143
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 143
    Points : 56
    Points
    56
    Par défaut Pb d'echelle avec un Slider
    Saluts à tous

    J'ai un pb avec un slider.

    Voici le code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    	Slider->SetRangeMin((int)(atof(str)*coef));
    	Slider->SetRangeMax((int)(atof(str)*coef));
    	gamma = (double)(m_CtrlGamma.GetPos()) / coef;
    	//Slider->SetPos((int)((double)(gamma0)*coef));
    	Slider->SetPos((int)((double)(2000)));
    Je modifie les valeurs min et max sachant que RangeMin = 1 / RangeMax

    Qd je fais varier mes bornes min et max je n'ai pas de variation de la position du slider

    Si je force le slider à la position de RangeMin le slider va bien se positionner dans la position min
    Si je force le slider à la position de RangeMax le slider va bien se positionner dans la position max
    Si je force le slider une position quelconque le slider va bien se positionner dans la position quelconque mais ne bouge pas qd je fais varier les bornes min et max


    Exemple

    Min 0.45 -> 0.3 -> 0.02
    ^
    | distance=const
    v
    Position slider 1 -> 1 -> 1
    ^
    | distance=const
    v

    Max 2.2 -> 3.33 -> 50.0


    La distance est constante quelque soit la valeur de Max = 1/Min

    Or 1 est plus près de 0.02 que de 50

    Est-ce que quelqu'un a une explication ?

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    391
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 391
    Points : 347
    Points
    347
    Par défaut
    Bonjour

    Dans ton code le men est le max est le même ont la meme declaration.


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Slider->SetRangeMin((int)(atof(str)*coef));
    	Slider->SetRangeMax((int)(atof(str)*coef));
    Cordialement

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    143
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 143
    Points : 56
    Points
    56
    Par défaut
    Excuse moi ricky78 mais pour faire court j'avais mis les lignes principale mais le code reelle est :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    	GammaMin->GetWindowText(str);				// Force à borne min
    	Slider->SetRangeMin((int)(atof(str)*coef));
    	GammaMax->GetWindowText(str);				// Force à borne max
    	Slider->SetRangeMax((int)(atof(str)*coef));
    	Slider->SetPos((int)((double)(2000));
    Donc je récupère bien le dans str d'abord la valeur Min à charger dans la nouvelle valeur Min puis la valeur Max à charger dans la nouvelle valeur max.
    J'te confirme bien qu'il y a problème et que le slider ne bouge pas.
    d'ailleurs quand je clique sur le slider il se met brutalement à se positionner correctement !

    NB : GammaMin et GammaMax sont des pointeurs de CStatic que j'ai
    défini dans ma fenêtre.

Discussions similaires

  1. Donner le focus à un slide (Avec Coda-Slider)
    Par totojordi dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 09/04/2010, 12h15
  2. forcer echelle avec la fonction contour
    Par heyyjoe dans le forum MATLAB
    Réponses: 3
    Dernier message: 06/11/2009, 13h50
  3. [Débutant] echelle avec la fonction plot
    Par steph496 dans le forum MATLAB
    Réponses: 2
    Dernier message: 11/06/2009, 12h56
  4. Réponses: 1
    Dernier message: 08/01/2009, 17h45
  5. Réponses: 17
    Dernier message: 14/06/2006, 17h20

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