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

C++/CLI Discussion :

[C++/CLI] PB d'affichage Form client


Sujet :

C++/CLI

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    209
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 209
    Points : 167
    Points
    167
    Par défaut [C++/CLI] PB d'affichage Form client
    Bonjour, je suis un habitué de Borland C++ Builder. Je suis passé à Visual C++ et je bloc pour l'affichage d'un "Form".
    Mon projet s'appel essai2.
    Le Form parent s'appel Form1. Je souhaire afficher un second Form que j'ai appelé "APropos" en utilisant la methode show() dans un évenement clic de cette maniere :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    //Evenement clic
        about =gcnew APropos();
        about->Owner = this;
        about->Show();
     
    // Declaration dans le Form1.h
       private : APropos^ about;
    La compilation se passe bien cependant à la l'execution sans débogage j'ai


    Que doit-je faire ? Ajouter #include ??? ou Parametrer quelque-chose ?

  2. #2
    Membre expérimenté Avatar de bossun
    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    1 359
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2002
    Messages : 1 359
    Points : 1 443
    Points
    1 443
    Par défaut
    le message d'erreur est assez clair.. regarde du coté des fichiers de ressources, s ils sont présents ou pas et s ils sont chargés
    il vaut mieux prendre son pied que de se prendre la tête!!

    http://bossun.noxblog.com

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    209
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 209
    Points : 167
    Points
    167
    Par défaut
    Dans ce cas comment ajouter cette ressource ? st-ce un fichier particulier.
    APropos est bien présent dans mon projet.

  4. #4
    Membre expérimenté Avatar de bossun
    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    1 359
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2002
    Messages : 1 359
    Points : 1 443
    Points
    1 443
    Par défaut
    qqs part lorsque tu ouvres ton formulaire "A Propos" il essaie de lire des informations sur un fichier de ressources...

    regarde dans ton explorateur de projet si des fichiers .resx sont bien présents...

    ils ont le meme nom que la form à laquelle ils sont attachés... poste le code de ton form à propos au pire... pour avoir plus de détails
    il vaut mieux prendre son pied que de se prendre la tête!!

    http://bossun.noxblog.com

  5. #5
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    209
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 209
    Points : 167
    Points
    167
    Par défaut
    Je ne me suis pas pris la tête j'ai créer un nouveau projet, je n'ai plus le message d'erreur.
    Effectivement dans un des fichier .resx avait un Problème, puis VC++ me reclamait essai2.ressources.dll.
    Merci pour l'aide
    Parcontre je bloc sur un évenement :

    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
     
    //Rétablit l'image quand la souris quitte la zone image-------------
    private: System::Void pictureBox2_MouseLeave(System::Object^  sender, System::EventArgs^  e) 
          {
    	this->pictureBox2->Image->FromFile("D:\Mes Documents\Visual Studio 2005\Projects\essai2\images\quitter.jpg");
         }
     
     
    //------------------------------
     
     
    //Change l'image quand la souris est sur la zone image-------------
    private: System::Void pictureBox2_MouseEnter(System::Object^  sender, System::EventArgs^  e) 
           {	 
    	this->pictureBox2->Image->FromFile("D:\Mes Documents\Visual Studio 2005\Projects\essai2\images\quitter.jpg");
     
          }
    Quel solution pour celà.

  6. #6
    Membre expérimenté Avatar de bossun
    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    1 359
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2002
    Messages : 1 359
    Points : 1 443
    Points
    1 443
    Par défaut
    tu n'affectes null part ton image au picturebox...

    essaie ça

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    	this->pictureBox2->Image = Image->FromFile("D:\Mes Documents\Visual Studio 2005\Projects\essai2\images\quitter.jpg");
    il vaut mieux prendre son pied que de se prendre la tête!!

    http://bossun.noxblog.com

  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
    Citation Envoyé par bossun
    tu n'affectes null part ton image au picturebox...

    essaie ça

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    	this->pictureBox2->Image = Image->FromFile("D:\Mes Documents\Visual Studio 2005\Projects\essai2\images\quitter.jpg");
    attention au doublage des \

  8. #8
    Membre expérimenté Avatar de bossun
    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    1 359
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2002
    Messages : 1 359
    Points : 1 443
    Points
    1 443
    Par défaut
    Citation Envoyé par nico-pyright(c)
    attention au doublage des \
    jsute... j'avais pas pensé...

    au pire ajoutes-y "@" devant le chemin d'un fichier

    comme ici

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    this->pictureBox2->Image = Image->FromFile(@"D:\Mes Documents\Visual Studio 2005\Projects\essai2\images\quitter.jpg");
    il vaut mieux prendre son pied que de se prendre la tête!!

    http://bossun.noxblog.com

  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
    Citation Envoyé par bossun
    jsute... j'avais pas pensé...

    au pire ajoutes-y "@" devant le chemin d'un fichier

    comme ici

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    this->pictureBox2->Image = Image->FromFile(@"D:\Mes Documents\Visual Studio 2005\Projects\essai2\images\quitter.jpg");
    non, ca, ca ne marche qu'en C#

  10. #10
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    209
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 209
    Points : 167
    Points
    167
    Par défaut
    Merci, du conseil. Mais après reflexion :
    - Afficher une image à partir d'un fichier dans ce cas n'est pas très judicieux.

    Je souhaiterai plutôt le faire à partir d'une ressource.
    J'ai ajouter une image qui se nomme "quitter" et "quitter_on" dans mon resx.
    grace aux methode "pictureBox2_MouseEnter" et "pictureBox2_MouseLeave" qui permettent d'affecter les images à "this->pictureBox2->Image".
    Comment puis-je faire celà ?

  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
    tu peux regarder dans la faq C++/CLI http://dotnet.developpez.com/faq/cpp...#loadressource

  12. #12
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    209
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 209
    Points : 167
    Points
    167
    Par défaut
    Oui de cette maniere ça fonctionne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
     pictureBox1->Image = Image::FromStream(Reflection::Assembly::GetExecutingAssembly()->GetManifestResourceStream("abc.gif"));
    et en faisant Click droit sur le projet --> Properties --> Linker --> Input --> Embed Managed Resource File (ou projet --> Propriétées --> Editeur de liens --> Entrée --> Incorporation du fichier de ressources managé)
    Puis indiquer le chemin complet du fichier à intégrer (exemple : e:\abc.bmp).

    Mais c'est des images que j'ai ajouté dans le Form1.resX à l'aide de l'interface.

    J'ai essayer :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    //Declaration de mes variables dans la classe Form1
    private: System::Drawing::Image^ quitter_on;
    private: System::Drawing::Image^ img;
    ensuite en affectant mes variables
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    void InitializeComponent(void) //du Form1
    {   
    //....
     
    this->SuspendLayout();
    // affectation de ressources images aux variables de typeSystem::Drawing::Image
     
    quitter=(cli::safe_cast<System::Drawing::Image^  >(resources->GetObject(L"pictureBox2.Image")));
     
    quitter_on=(cli::safe_cast<System::Drawing::Image^  >(resources->GetObject(L"quitter_on")));
     
    //suite...
    }
    et dans pictureBox2_MouseEnter
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    this->pictureBox2->Image =quitter_on;

    Ce code fonctionne en tout cas.

  13. #13
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    209
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 209
    Points : 167
    Points
    167
    Par défaut
    Maintenant que la prise en main de l'IHM est acquis.
    Je souhaiterai ajouter une base de donnée intégré à un projet qui soit executable sur n'importe quel machine (sous windows Bien-sûre).
    Par la suite, est-on obligé d'installer un serveur de donnée sur la machine qui va executer l'application final ?

    De quel façon je peux proceder.

  14. #14
    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
    tu peux utiliser une BD access sans sgbd, mais ca dépend les besoins

  15. #15
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    209
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 209
    Points : 167
    Points
    167
    Par défaut
    La bdd permet de stocker une liste d'éleve avec leur coordonnée.
    Une autre table permet de stocker les cours réalisés.
    Une table pour les examens.
    Une table pour stocker des offres.

    Dans mon application il faudra gerer les eleves, calculer leurs soldes et ajouter des offres.

    Je n'ai pas besoin d'une base de données très évolué, mais quelque chose de propre et assez universelle.
    Les personnes qui installerons et utiliserons cette application sont novices en informatique.

  16. #16
    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
    pourquoi pas access

  17. #17
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    209
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 209
    Points : 167
    Points
    167
    Par défaut
    comment puis-je incorporer etacceder à ma base de donnée dans mon projet ?

  18. #18
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    209
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 209
    Points : 167
    Points
    167
    Par défaut
    J'ai fait clic droit sur le projet -->Ajouter --> nouvel element --> DataSet que j'ai appelé Dataset1

    J'ai créer une base de donnée sous acces que j'ai appelé eleve.mdb.

    Ensuite sous VS dans la boite à outils j'ai pris TableAdapter qui ma demandé le chemin de mon mdb
    Ensuite il m'a donnée une chaine de connexion base de donnée ( Provider=Microsoft.Jet.OLEDB.4.0;Data Source="D:\Mes Documents\Visual Studio 2005\Projects\FistDataBase\FistDataBase\eleve.mdb" )

    Il me demande de generer des requetes, j'ai ajouté mes tables et coché les champs qui les lies.

    Il me donne :
    - Pour remplir dataTable : fill
    - Pour retourne datatable : GetData

    Est-ce bien la bonne manipulation à faire ?
    Si oui comment je gére mes tables ( ajouter enregistrement, faire une requete, etc...) ?

  19. #19
    Membre expérimenté Avatar de bossun
    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    1 359
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2002
    Messages : 1 359
    Points : 1 443
    Points
    1 443
    Par défaut
    si tu n 'as pas peaucoup de données, tu peux utiliser les fichiers xml..
    il vaut mieux prendre son pied que de se prendre la tête!!

    http://bossun.noxblog.com

  20. #20
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    209
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 209
    Points : 167
    Points
    167
    Par défaut
    Que ce soit xml ou mdb, il ya bien des methodes qui permettent de se connecter à la base de donnéee, ajouter un enregistrement, rechercher un champ, etc...?
    Quelles fonctions utiliser ?

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. Documentation sur oracle forms client /serveur
    Par essse dans le forum Forms
    Réponses: 9
    Dernier message: 23/04/2008, 18h12
  2. Problème affichage form avec Internet Explorer dans un menu
    Par dupard2006 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 5
    Dernier message: 28/03/2006, 19h26
  3. [MFC] Affichage FORM
    Par zalx dans le forum MFC
    Réponses: 4
    Dernier message: 27/03/2006, 09h29
  4. affichage form
    Par Flagny dans le forum IHM
    Réponses: 7
    Dernier message: 12/12/2005, 17h32
  5. affichage forme en fonction de la resolution de l'ecran
    Par shiners300 dans le forum C++Builder
    Réponses: 1
    Dernier message: 24/11/2004, 14h33

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