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 :

Débutant C++.net Besoins d'aide !!!


Sujet :

MFC

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    96
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 96
    Points : 33
    Points
    33
    Par défaut Débutant C++.net Besoins d'aide !!!
    Bonjour à tous et à toutes,

    voilà j'ai fait un peu(très peu) de C++ et du C# (un peu plus) déjà mais voilà qu'on me demande de faire un projet c++.net.
    Le truc c'est que je n'arrive pas à trouver mes repères.

    Avez-vous des liens utiles, bouquins a me conseiller.

    voila le seul truc que j'ai compris :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    private: System::Void menuchoix_Click(System::Object *  sender, System::EventArgs *  e)
    		 {
    			 boiteouvririmg->ShowDialog();
    			 tabPage1->Controls->Add( ???????)
    		 }
     
    boiteouvririmg->ShowDialog() == boiteouvririmg.ShowDialog()
    en C#

    Ce que j'aimerai faire c'est d'ouvrir une image via "boiteouvririmg" et la mettre dans tabpage1

    pouvez vous m'aider ?



  2. #2
    Rédacteur
    Avatar de nico-pyright(c)
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    6 414
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 6 414
    Points : 16 075
    Points
    16 075
    Par défaut
    Bonjour,

    c'est toi qui a fait la form "boiteouvririmg" ? tu as son code ? elle renvoit quelque chose ?

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    96
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 96
    Points : 33
    Points
    33
    Par défaut
    "boiteouvririmg" est un composant que j'ai déposé sur le formulaire principal, il n'y a donc pas de code sauf dans initialiez component
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    // 
            // boiteouvririmg
           // 
    this->boiteouvririmg->Filter = S"Fichiers Images (*.gif *jpeg *jpg *png)|*.gif|*.jpeg|*.jpg|*.png|";
    this->boiteouvririmg->Title = S"Sélectionnez une image...";
    J'essaye d'insérée une image dans la tabpage1(du tabcontrol) est donc je dois forcement utiliser cette formule : tabPage1->Controls->Add() mais je ne sais pas quoi mettre comme paramètre.

    (Je travail sur C++.net)
    N'as-tu pas des liens vers des sites qui traitent de C++.net, aide, tutos ?
    ou des bouquins ?

  4. #4
    Rédacteur
    Avatar de nico-pyright(c)
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    6 414
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 6 414
    Points : 16 075
    Points
    16 075
    Par défaut
    il faut faire un truc du genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    				 openFileDialog1->Title = "Sélectionnez une image...";
    				 openFileDialog1->InitialDirectory = "c:\\";
    				 openFileDialog1->Filter = "Fichiers Images (*.gif *jpeg *jpg *png)|*.gif|*.jpeg|*.jpg|*.png|";
    				 openFileDialog1->FilterIndex = 2 ;
    				 openFileDialog1->RestoreDirectory = true ;
    				 if(openFileDialog1->ShowDialog() == System::Windows::Forms::DialogResult::OK)
    				 {
    					 tabPage1->Controls->Add( openFileDialog1->FileName);
    				 }

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    96
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 96
    Points : 33
    Points
    33
    Par défaut
    Voilà ce que j'ai mis :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    boiteouvririmg->ShowDialog();
    if(boiteouvrir->ShowDialog() == System::Windows::Forms::DialogResult::OK) 
    {
    tabPage1->Controls->Add(boiteouvrir->FileName); 
    }
    mais il me met l'erreur suivante :
    "error C2664: 'System::Windows::Forms::Control::ControlCollection::Add' : cannot convert parameter 1 from 'System::String __gc *' to 'System::Windows::Forms::Control __gc *'"

  6. #6
    Rédacteur
    Avatar de nico-pyright(c)
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    6 414
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 6 414
    Points : 16 075
    Points
    16 075
    Par défaut
    quel est le type de tabpage ?

  7. #7
    Rédacteur
    Avatar de nico-pyright(c)
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    6 414
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 6 414
    Points : 16 075
    Points
    16 075
    Par défaut
    faut aussi pas mélanger ce qu'on veut faire.

    en l'occurence ici, tu veux créer un objet image pour l'afficher
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    					 System::Drawing::Image ^ img = System::Drawing::Image::FromFile(openFileDialog1->FileName);
    					 panel1->BackgroundImage = img;

  8. #8
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    96
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 96
    Points : 33
    Points
    33
    Par défaut
    C'est fait merci !
    Par contre y a t-il un moyen de récupérer la taille de l'image car si le panel est trop petit l'image n'est pas redimensionée il faut donc modifier la size du panel pour s'adapter à la taille de l'image.

  9. #9
    Rédacteur
    Avatar de nico-pyright(c)
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    6 414
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 6 414
    Points : 16 075
    Points
    16 075
    Par défaut
    il faut utiliser les propriétés de l'image, ici img->size

  10. #10
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    96
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 96
    Points : 33
    Points
    33
    Par défaut
    Merci ! y'a t-il une propriété pour faire un zoom ?

  11. #11
    Rédacteur
    Avatar de nico-pyright(c)
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    6 414
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 6 414
    Points : 16 075
    Points
    16 075
    Par défaut
    t'as aussi le droit de regarder dans l'aide.
    Pas que je sache non

  12. #12
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    96
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 96
    Points : 33
    Points
    33
    Par défaut
    J'aimerai bien utiliser l'aide cela m'aurait permit d'éviter plusieurs questions banales mais je n'ai bizarrement pas d'aide sur le C++.net ni autre C, C#,VB... uniquement "Microsoft Document Explorer Help" totalement inutile j'ai pourtant vérifié à l'installation mais pas moyen d'installer l'aide.

    Avez vous trouver un moyen de zoomer sur une image par exemple de 120%.... ?

  13. #13
    Rédacteur
    Avatar de nico-pyright(c)
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    6 414
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 6 414
    Points : 16 075
    Points
    16 075
    Par défaut
    aide : http://msdn.microsoft.com/library/

    non, je n'ai pas cherché de moyen de zoomer sur une image.

  14. #14
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    96
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 96
    Points : 33
    Points
    33
    Par défaut
    J'essaye maintenant d'ouvrir un 2ème formulaire à partir d'un bouton

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    private: System::Void boutins_Click(System::Object *  sender, System::EventArgs *  e)
    		 {
    			 Form2 f2 = new Form2;
    			 f2->ShowDialog();
    		 }
    Ce code n'est pas bon mais je sais qu'il est bon sous C# mais pas sous C++.net

    voici les erreurs :
    error C2061: syntax error : identifier 'Form2'
    error C2065: 'f2' : undeclared identifier
    error C2065: 'Form2' : undeclared identifier
    error C2146: syntax error : missing ';' before identifier 'f2'
    error C2227: left of '->ShowDialog' must point to class/struct/union
    error C3861: 'f2': identifier not found, even with argument-dependent lookup

  15. #15
    Rédacteur
    Avatar de nico-pyright(c)
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    6 414
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 6 414
    Points : 16 075
    Points
    16 075
    Par défaut
    il faut inclure le .h où est défini la form
    il faut utiliser gcnew

    en gros, il te faut un cours

  16. #16
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    96
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 96
    Points : 33
    Points
    33
    Par défaut
    Je sais bien ...tu voudrais pas me copier le code vite fait ?

  17. #17
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    96
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 96
    Points : 33
    Points
    33
    Par défaut
    C'est bon j'ai trouvé !!

  18. #18
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    96
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 96
    Points : 33
    Points
    33
    Par défaut
    Cependant j'ai un aute petit problème.J'essaye de crée une Classe "vignette"(vignette.h) dé rivé de la classe Panel.

    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
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
     
    class vignette : public System::Windows::Forms::Panel
    {
     
    public : 
    	int CordX;
    	int CordY;
    	int DimWid;
    	int DimHei;
    	bool FramedS;
    	int Fleft;
    	int Fbot;
    	int Ftop;
    	int Frig;
    	bool UVMiror;
    	bool UVFlip;
     
    private:
     
    int getCordX()
    {
    return CordX;
    }
    int getCordY()
    {
    return CordY;
    }
    int getDimWid()
    {
    return DimWid;
    }
    int getDimHei()
    {
    return DimHei;
    }
    bool getFramedS()
    {return FramedS;}
    int getFleft()
    {
    return Fleft; 
    }
    int getFbot()
    {
    return Fbot;
    }
    int getFtop()
    {
    return Ftop;
    }
    int getFrig()
    {
    return Frig;
    }
    bool getUVMiror()
    {
    return UVMiror;
    }
    bool getUVFlip()
    {
    return UVFlip;
    }
    void setCordX(int x)
    {
    	CordX=x;
    }
    void setCordY(int y)
    {
    CordY=y;
    }
    void setDimWid(int wid)
    {
    	DimWid=wid;
    }
    void setDimHei(int hei)
    {
    DimHei=hei;
    }
    void setFramedS(bool fram)
    {
    	FramedS=fram;
    }
    void setFleft(int f)
    {
    Fleft=f;
    }
    void setFbot(int b)
    {
    	Fbot=b;
    }
    void setFtop(int t)
    {
    Ftop=t;
    }
    void setFrig(int r)
    {
    	Frig=f;
    }
    void setUVMiror(bool uvm)
    {
    	UVMiror=uvm;
    }
    void setUVFlip(bool uvf)
    {
    	UVFlip=uvf;
    }
     
    };
    J'ai fait son appel dans mon formulaire principale par #include"vignette.h"
    mais j'obtient une erreur :

    error C3625: 'vignette': an unmanaged type cannot derive from a managed type 'System::Windows::Forms:anel'

    Pouvez-vous m'éclairer ?

  19. #19
    Rédacteur
    Avatar de nico-pyright(c)
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    6 414
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 6 414
    Points : 16 075
    Points
    16 075
    Par défaut
    déclare ta classe comme managée, avec le mot clé ref

  20. #20
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    96
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 96
    Points : 33
    Points
    33
    Par défaut
    Pourrais tu me dire où je dois mettre ce mot clé "ref" ?
    Ai-je oublié d'inclure dans ma classe quelconque <iostream.h>ou<malloc.h> ou ce n'est pas nécessaire ?

    Merci

Discussions similaires

  1. vb.net besoin d'aide..
    Par Alex35 dans le forum ASP.NET
    Réponses: 1
    Dernier message: 03/12/2007, 15h21
  2. débutant sur mysql besoin d'aide
    Par feragne dans le forum Débuter
    Réponses: 9
    Dernier message: 05/06/2007, 12h07
  3. [Vb.net] Besoin d'aide pour générer des graphs
    Par NicoNGRI dans le forum ASP.NET
    Réponses: 2
    Dernier message: 12/12/2006, 18h33
  4. [VB.NET] besoin d'aide pour déchiffrer un code
    Par pcdj dans le forum Windows Forms
    Réponses: 10
    Dernier message: 27/06/2006, 11h32
  5. Débutant qui a besoin d'aide
    Par BerneyBoy dans le forum Langage
    Réponses: 1
    Dernier message: 14/01/2006, 21h33

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