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 :

conversion int to float ->resultat erron�


Sujet :

MFC

  1. #1
    Membre �clair�

    Profil pro
    Inscrit en
    D�cembre 2003
    Messages
    650
    D�tails du profil
    Informations personnelles :
    �ge : 45
    Localisation : France

    Informations forums :
    Inscription : D�cembre 2003
    Messages : 650
    Par d�faut conversion int to float ->resultat erron�
    bonjour,

    je vois pas pourquoi mon code est faux :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    	CRect Rect;
       this->GetWindowRect(&Rect);
     
       int X = GetSystemMetrics(SM_CXSCREEN),
    	   Y = GetSystemMetrics(SM_CYSCREEN),
    	   x = Rect.right,
    	   y = Rect.bottom;
     
    	p_fResizeRatioX = X / x;
    	p_fResizeRatioY = Y / y;
    Avant d'arriver aux 2 dernieres lignes, les valeurs dans X,Y,x et y changent et du coup les ratios sont faux.

    Que faire ?

  2. #2
    R�dacteur
    Avatar de farscape
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes C�te d'Azur)

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Par d�faut
    salut,
    GetSystemMetrics renvoit un int ,alors ton constat est erron� ...
    ou ton code ne represente pas ce que tu fais.

  3. #3
    Membre �clair�

    Profil pro
    Inscrit en
    D�cembre 2003
    Messages
    650
    D�tails du profil
    Informations personnelles :
    �ge : 45
    Localisation : France

    Informations forums :
    Inscription : D�cembre 2003
    Messages : 650
    Par d�faut
    j'ai oubli� de preciser que p_fResizeRatioX et p_fResizeRatioY sont des floats

    je cherche le ratio entre l'etat normal et l'etat maximis�

  4. #4
    R�dacteur
    Avatar de farscape
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes C�te d'Azur)

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Par d�faut
    et bien tu auras la partie entiere de la division.
    tu as dis :
    Avant d'arriver aux 2 dernieres lignes, les valeurs dans X,Y,x et y changent et du coup les ratios sont faux.
    a mon avis c'est faux..
    le mode debug trace est tres bien pour verifier tout �a .
    ou rajoute des TRACE("\n x:%d",x);
    et indique les valeurs obtenues.



  5. #5
    R�dacteur
    Avatar de bigboomshakala
    Homme Profil pro
    Consultant Web .NET
    Inscrit en
    Avril 2004
    Messages
    2 077
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 45
    Localisation : France, Val de Marne (�le de France)

    Informations professionnelles :
    Activit� : Consultant Web .NET
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2004
    Messages : 2 077
    Par d�faut
    et pense � caster les int en float avant la division (sinon tu fais une division enti�re).

  6. #6
    Membre �clair�

    Profil pro
    Inscrit en
    D�cembre 2003
    Messages
    650
    D�tails du profil
    Informations personnelles :
    �ge : 45
    Localisation : France

    Informations forums :
    Inscription : D�cembre 2003
    Messages : 650
    Par d�faut
    c'est ok maintenant avec ce code :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    	CRect Rect;
       this->GetWindowRect(&Rect);
     
       int X = GetSystemMetrics(SM_CXSCREEN),
    	   Y = GetSystemMetrics(SM_CYSCREEN),
    	   x = Rect.right,
    	   y = Rect.bottom;
     
    	p_fResizeRatioX = (float)X / (float)x;
    	p_fResizeRatioY = (float)Y / (float)y;
    mais je vous assure qu'avant, ca partait en biberine

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. Conversion int vers Float
    Par roro8 dans le forum D�veloppement de jobs
    R�ponses: 5
    Dernier message: 08/02/2010, 11h38
  2. Incoh�rence � la conversion de int en float
    Par erniubo dans le forum D�buter
    R�ponses: 4
    Dernier message: 23/01/2009, 11h19
  3. [VB.NET] Conversion int-> bytes sur 4 octets
    Par SteelBox dans le forum Windows Forms
    R�ponses: 11
    Dernier message: 09/01/2005, 22h08
  4. R�ponses: 2
    Dernier message: 01/07/2004, 11h36
  5. [d�butant] conversion int en hexa
    Par sergoid dans le forum C++Builder
    R�ponses: 6
    Dernier message: 16/05/2003, 11h11

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