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 :

L'objet HDC dans Form1.h pas dispo dans autres .cpp (add ou reference :/)


Sujet :

MFC

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    21
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 21
    Par d�faut L'objet HDC dans Form1.h pas dispo dans autres .cpp (add ou reference :/)
    Bonjour,

    voil� j'ai un soucis, l'objet m_hDC de type HDC, il me dit lors de la compile :
    1>.\Bmp.cpp(28) : error C2065: 'm_hDC' : identificateur non d�clar�
    Dans la fonction affichage il ne le reconnait pas donc, et le je peux pas faire comme le buffer, enfin j'ai essay� de transmettre son adresse mais �a ne fonctionne pas. Si quelqu'un a une id�e ?

    Merci




    Form1.cpp (le CODE concern�) (ligne 10 et 36):
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
     
    public ref class Form1 : public System::Windows::Forms::Form
    	{
    	public:
    		Form1(void)
    		{
    			InitializeComponent();
    			//
    			//TODO : ajoutez ici le CODE du constructeur
    			//
    			m_hDC = GetDC((HWND)this->panel1->Handle.ToPointer());
    		}
     
    	protected:
    		/// <summary>
    		/// Nettoyage des ressources utilisées.
    		/// </summary>
    		~Form1()
    		{
    			if (components)
    			{
    				delete components;
    			}
    		}
    	private: System::Windows::Forms::Button^  button1;
    	protected: 
    	private: System::Windows::Forms::Button^  button2;
    	private: System::Windows::Forms::Label^  label1;
    	private: System::Windows::Forms::Panel^  panel1;
     
     
    	private:
    		/// <summary>
    		/// Variable nécessaire au concepteur.
    		/// </summary>
    		System::ComponentModel::Container ^components;
    		HDC m_hDC;
    Toujours Form1., ligne 10 :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    #pragma endregion
    	private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e) {
     
    	//******************************************************************
    	const int TAILLETOT = 400000;
        unsigned char *buffer1 = new unsigned char [TAILLETOT];
    	dlBmp(buffer1);
    	//*******************************************************************
     
    	affichage(buffer1);
     
    			 }
    	};
    }
    Bmp.h (la fonction concern�) ligne 18 :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
     
    void affichage(unsigned char *buffer1)
    {
    	unsigned char *buffer2 = (unsigned char *)strstr((char *)buffer1, "BM");
    	buffer2 = buffer2 + 54;
     
    	int hauteur = 240; // WARNING !
    	int largeur = 320; // WARNING !
    	int nbBits = 3; // car 24 bits = 8B pour chaque couleur RGB ce qui fait 3 octets
     
    	for (int l=0; l < hauteur; l++)
    	{
                    for (int c=0; c < largeur; c++)
                    {
                         unsigned char b = buffer2[l*largeur*nbBits +c*nbBits];
                         unsigned char g = buffer2[l*largeur*nbBits +c*nbBits +1];
                         unsigned char r = buffer2[l*largeur*nbBits +c*nbBits +2];
                         COLORREF couleur = RGB (r, g, b);
                         SetPixel(m_hDC, c, hauteur -1 - l, couleur);
                    }
    	}
    }

  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,
    ta fonction affichage ne fait pas partie de la classe form1 elle ne peut donc pas connaitre m_hdc..

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    21
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 21
    Par d�faut
    Citation Envoy� par farscape Voir le message
    salut,
    ta fonction affichage ne fait pas partie de la classe form1 elle ne peut donc pas connaitre m_hdc..
    oui donc comment je peux faire ? car je veux que Form1.h y'est le minimum de code.

Discussions similaires

  1. Comment faire que des objets 3D ne se touchent pas dans une sc�ne.
    Par ibrakola dans le forum D�veloppement 2D, 3D et Jeux
    R�ponses: 2
    Dernier message: 16/05/2012, 01h40
  2. R�ponses: 2
    Dernier message: 10/03/2010, 15h36
  3. R�ponses: 4
    Dernier message: 26/01/2010, 11h48
  4. [MySQL] Donn�es SQL dans un tableau pas comme les autres
    Par Jeoffrey54 dans le forum PHP & Base de donn�es
    R�ponses: 5
    Dernier message: 29/06/2008, 11h32
  5. R�ponses: 3
    Dernier message: 12/02/2007, 03h14

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