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

Visual C++ Discussion :

[VISUAL C++ DEBUTANT] Divers Problèmes


Sujet :

Visual C++

  1. #1
    Membre confirmé Avatar de Iphelias
    Homme Profil pro
    Développeur Java
    Inscrit en
    Février 2007
    Messages
    126
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Luxembourg

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Février 2007
    Messages : 126
    Par défaut [VISUAL C++ DEBUTANT] Divers Problèmes
    Bonjour,

    Je developpe actuellement un projet sous Visual C++. Par contre j'ai des difficultés à utiliser les fenêtres et autres possibilité.

    Bon pour simplifier, je cherche à réaliser une fenêtre composé d'un menu. Dans le menu on doit pouvoir faire Fichier ---> Ouvrir et la Avoir une fenetre de choix de fichier (Style Windows) appelé "une boîte de dialogue 'parcourir'" Par Bob et CGi dans leur tutorial ...ON choisit un fichier image et celui ci s'affiche dans notre fenetre.

    Premier question: Comment ouvrir une fenetre de choix de fichiers (style windows).
    [...]
    j'appel dans :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam){ [...] }
    la fonction suivante
    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
     
    void DoFileOpen(HWND hwnd)
    {
    	OPENFILENAME ofn;
    	char szFileName[MAX_PATH] = "";
    	char ext[3];
     
    	ZeroMemory(&ofn, sizeof(ofn));
     
    	ofn.lStructSize = sizeof(OPENFILENAME);
    	ofn.hwndOwner = hwnd;
    	ofn.lpstrFilter = "Fichiers audio (*.mp3;*.wma;*.ogg;*.wav)\0*.mp3;*.wma;*.ogg;*.wav\0Listes de lecture (*.wpl;*.m3u;*.asx)\0*.wpl;*.m3u;*.asx\0Tous les fichiers (*.*)\0*.*\0";
    	ofn.lpstrFile = szFileName;
    	ofn.nMaxFile = MAX_PATH;
    	ofn.Flags = OFN_EXPLORER | OFN_FILEMUSTEXIST | OFN_HIDEREADONLY;
    	ofn.lpstrDefExt = "mp3";
     
    	if(GetOpenFileName(&ofn))
    	{
    		getExt(szFileName,ext);
    		if(stricmp(ext,"mp3")==0 || stricmp(ext,"wma")==0 || stricmp(ext,"ogg")==0 || stricmp(ext,"wav")==0){
    			if(!ajouterMusique(hwnd,szFileName,&ListeAConv,IDC_LIST))
    				MessageBox(hwnd, "Impossible d'ajouter le fichier","Erreur", MB_OK | MB_ICONINFORMATION);
    		}
    		else if(stricmp(ext,"wpl")==0 || stricmp(ext,"m3u")==0 || stricmp(ext,"asx")==0){
    			if(!ajouterPlaylist(hwnd,szFileName,&ListeAConv))
    				MessageBox(hwnd, "Impossible d'ajouter le fichier","Erreur", MB_OK | MB_ICONINFORMATION);
    		}
    		else 
    			MessageBox(hwnd,"Erreur : Format incompatible","Erreur", MB_OK | MB_ICONINFORMATION);
    	}
    }
    Sachant que j'avais déja utilisé cette méthode en C et cela fonctionnait.

    Je vous laisse aussi la liste d'erreur générée.

    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
    symboles.cpp(64) : error C2065: 'OPENFILENAME' : undeclared identifier
    symboles.cpp(64) : error C2146: syntax error : missing ';' before identifier 'ofn'
    symboles.cpp(64) : error C2065: 'ofn' : undeclared identifier
    symboles.cpp(70) : error C2228: left of '.lStructSize' must have class/struct/union type
    symboles.cpp(71) : error C2228: left of '.hwndOwner' must have class/struct/union type
    symboles.cpp(72) : error C2228: left of '.lpstrFilter' must have class/struct/union type
    symboles.cpp(73) : error C2228: left of '.lpstrFile' must have class/struct/union type
    symboles.cpp(74) : error C2228: left of '.nMaxFile' must have class/struct/union type
    symboles.cpp(75) : error C2228: left of '.Flags' must have class/struct/union type
    symboles.cpp(75) : error C2065: 'OFN_EXPLORER' : undeclared identifier
    symboles.cpp(75) : error C2065: 'OFN_FILEMUSTEXIST' : undeclared identifier
    symboles.cpp(75) : error C2065: 'OFN_HIDEREADONLY' : undeclared identifier
    symboles.cpp(76) : error C2228: left of '.lpstrDefExt' must have class/struct/union type
    symboles.cpp(78) : error C2065: 'GetOpenFileName' : undeclared identifier
    symboles.cpp(80) : error C2065: 'getExt' : undeclared identifier
    symboles.cpp(82) : error C2065: 'ajouterMusique' : undeclared identifier
    symboles.cpp(82) : error C2065: 'ListeAConv' : undeclared identifier
    symboles.cpp(82) : error C2065: 'IDC_LIST' : undeclared identifier
    symboles.cpp(86) : error C2065: 'ajouterPlaylist' : undeclared identifier
    Error executing cl.exe.
    Creating browse info file...
     
    symboles.exe - 19 error(s), 0 warning(s)
    [EDIT]
    J'en profite pour ajouter une question :
    Sachant que je veux avoir un menu, dans une fenetre qui permet d'ouvrir "une boîte de dialogue 'parcourir'" et lorsque j'ai choisi monfichier (ici une image) je l'affiche dans ma fenetre. De plus j'aimerais ajouter un bouton dans ma fenetre enfin dans l'espace "client". Cela est -ce possible ??

    Sachant que le But Final est de pouvoir ouvrir ( avec traitement je suppose ), un fichier de type vectoriel et effectué un bruitage dessus.

    Je remerci Bob et CGi pour leur superbe Tuto.

    J'espere que vous pourrez m'aider.
    En tt cas merci d'avance !

  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,
    pour ton premier problème : tu n'as pas du inclure l'entête windows.h

    Citation Envoyé par Msdn
    OPENFILENAME
    Header: Declared in Commdlg.h; include Windows.h.

  3. #3
    Membre confirmé Avatar de Iphelias
    Homme Profil pro
    Développeur Java
    Inscrit en
    Février 2007
    Messages
    126
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Luxembourg

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Février 2007
    Messages : 126
    Par défaut
    PREMIER PROBLEME RESOLU

    Merci en effet j'avais oublié qques "include"... <boulet>


    DEUXIEME PROBLEME

    Donc maintenant, j'aurais juste besoin d'aide ou d'avis pour savoir comment insérer des boutons voir même des dialog box dans une fenetre
    j'ai lu la FAQ et je comprend pas grand chose ...

    QQn aurait 'il un exemple simple d'une fenetre qui integre une DIALGBOX ???

  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
    Par défaut
    je serais étonné que ca ne soit pas traité dans les tutos de bob et chgi...

    Tu utilises l'éditeur de ressources ? quel est le problème exactement ?

  5. #5
    Membre confirmé Avatar de Iphelias
    Homme Profil pro
    Développeur Java
    Inscrit en
    Février 2007
    Messages
    126
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Luxembourg

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Février 2007
    Messages : 126
    Par défaut
    Donc Voila ce que j'arrive a faire en créant une fenetre et un Menu ....


    Et donc voila ce que j'aimerais réussir a faire ...


    Maintenant si ça se trouve suis peu etre un gros boulet ...
    Mais, suis franchement pas copain avec VC++, j'ai plus l'habitude de developper en Java.

  6. #6
    Expert confirmé
    Avatar de Mat.M
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2006
    Messages
    8 526
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 8 526
    Par défaut
    Les dialogbox c'est une autre étape ; excuses-moi mais c'est assez compliqué et vaste la programmation Windows.
    Je conseillerais le MSDN mais c'est vraiment pas didactique du tout
    Pour créer une fenêtre "dialogue" il faut appeler DialogBox pour l'afficher en modal ou bien CreateDialog dixit Ch Petzold.

    Comme le dit Farscape il faut utiliser l'éditeur de ressources.

    Sinon tu n'as pas choisi le plus facile c'est ce qui a de plus atroce la programmation windows win32
    Bon je ne veux pas te décourager.

  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
    Par défaut
    Citation Envoyé par Mat.M
    Comme le dit Farscape il faut utiliser l'éditeur de ressources.
    tu nous melanges, c'est la 2ieme fois

    La création d'un projet "WIn32" t'est-elle obligatoire ? en tant que débutant, les winforms sont plus faciles d'accès

  8. #8
    Membre confirmé Avatar de Iphelias
    Homme Profil pro
    Développeur Java
    Inscrit en
    Février 2007
    Messages
    126
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Luxembourg

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Février 2007
    Messages : 126
    Par défaut
    non non le projet win 32 n'est pas obligatoire ...
    Je croyais juste que c'étais le bonne solution ...

    Mais ce que je chhc a faire est réalisable ???
    Car pour le moment j'ai créé ma fenetre et l'affichage de l'image...
    j'ai créé ma dialogbox mais je n'arrive pas a l'afficher juste sur une partie de la fenetre ... comme ce que l'on peu voir précedement ...

    dommage que je ne puisse pas le faire en Java

Discussions similaires

  1. [DEBUTANT - VBA] Problèmes de ComboBox
    Par _Maniak dans le forum Général VBA
    Réponses: 13
    Dernier message: 10/03/2006, 10h02
  2. [Debutant(e)]problème de variable d'environnement
    Par tolsam dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 12/08/2004, 19h08
  3. [Debutant(e)] Problème fichier texte et vue
    Par solenn dans le forum Eclipse Platform
    Réponses: 2
    Dernier message: 21/07/2004, 09h23
  4. [debutant][Gregoriancalendar] Problème avec le set
    Par britou dans le forum Collection et Stream
    Réponses: 2
    Dernier message: 30/06/2004, 16h01
  5. [Debutant][Divers] - namespace et attributs
    Par sebbb dans le forum XML/XSL et SOAP
    Réponses: 2
    Dernier message: 10/06/2003, 14h40

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