Votre question

[MFC]utilisation d'un slider

Tags :
  • Dialogue
  • Programmation
Dernière réponse : dans Programmation
15 Mai 2006 09:46:03

salut, je voudrais realiser une fonction qui quand je l'appelle ouvre une boite de dialoque avec un slider. en bougant ce slider, je voudrais que le seuillage d'une image soit realiser(le deplacement correspond au changement de la valeur de seuil).
j'arrive deja a ouvrir la boite de dialogue avec le slider, mais je ne sais pas comment recupere la valeur que deoit me retourné le slider et limite les valeur que peut prendre le slider de 0 a 255.

Est ce que quelqu'un pourrait m'aider?

Autres pages sur : mfc utilisation slider

15 Mai 2006 10:22:04

Pour intercepter la fin de déplacement du slider, c'est le message NM_RELEASEDCAPTURE.
Pour savoir quelle est la valeur courante du slider c'est la méthode GetPos() et enfin pout fixer l'échelle de ton slider c'est SetRange(min, max, ...).

Mais la doc me parait assez explicite sur ça non?
15 Mai 2006 10:32:42

merci, mais est qu'il faut que je fixe l'echelle dans la classe de la boite de dialogue qui contient le slider, dans la fonction ou j'utilise le slider ou ca revient au même?
Contenus similaires
15 Mai 2006 11:15:17

Tu peux fixer l'échelle là où tu le souhaites tant que tu contrôles ce que tu fais.
Je suppose que cette échelle sera toujours la même donc tu as tout intérêt à le faire dans l'init de la boîte de dialogue.
15 Mai 2006 11:31:08

ok, merci je voudrai savoir, pour recuperer la position du slider, je doit le faire dans la classe de la boite de dialoque, ou pas parce que j'ai regarder, et dans cette classe j'ai deux fonction. le constructeur, et la fonction DoDataExchange, mais je sais pas ce que cette fonction est sensé faire donc je sais pas si je met la fonction GetPos() dans cette fonction ou si je dois creer une autre fonction pour recuperer la position.
15 Mai 2006 12:11:20

Tu ne peux manipuler des objets dépendants de ta boîte de dialogue (le contexte graphique entre autre de ton slider) tant que celle ci n'est pas initialisé.
Donc tu ne peux pas le manipuler dans le constructeur de la boîte de dialogue.

Il faut que tu implémentes la méthode OnInitDialog de ta fenêtre et dans celle ci tu pourras initialisé ton composant.

Pour utiliser la méthode GetPos tu as plusieurs solution :
- Lorsque tu relâches le slider, il faut que tu implémentes la méthode NM_RELEASEDCAPTURE.
- En appuyant sur un autre bouton
- Pendant le mouvement du slider, mais je pense que pour cette solution il faut que tu passes par une classe dérivée de CSliderCtrl pour renvoyer le message à la fenêtre mère pendant le déplacement ...
Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS