Visual C++ comment faut faire ????

Visual C++ comment faut faire ???? - Programmation

Marsh Posté le 23-05-2001 à 16:39:32    

mes questions :
 
1) Comment faire une boite de dialogue d'ouverture de fichier ?  
 
2) Comment faire pour avoir une fenetre console (type dos) en même temps que ma fenetre principale ? Ou alors, est-il possible de récupérer des messages provenant d'un dll qui les envoye à une console inexistante ?  
 
  Merci d'avance !!
 :jap:

Reply

Marsh Posté le 23-05-2001 à 16:39:32   

Reply

Marsh Posté le 23-05-2001 à 16:52:30    

Pour ta question 1 je t'enverrai un petit exemple lorsque je serais @home pour la 2 t'es loin d'être clair ds ce que tu veux faire. Alors encore un effort :)
 

Moustaaki a écrit a écrit :

mes questions :
 
1) Comment faire une boite de dialogue d'ouverture de fichier ?  
 
2) Comment faire pour avoir une fenetre console (type dos) en même temps que ma fenetre principale ? Ou alors, est-il possible de récupérer des messages provenant d'un dll qui les envoye à une console inexistante ?  
 
  Merci d'avance !!
 :jap:



Reply

Marsh Posté le 23-05-2001 à 22:08:02    

pour la preemière question voici un exemple :
 
CFileDialog dlg (TRUE, "exe","*.exe", OFN_FILEMUSTEXIST|OFN_HIDEREADONLY, NULL, this);
dlg.DoModal();


---------------
http://www.chadenat.forez.com
Reply

Marsh Posté le 23-05-2001 à 22:49:28    

Si tu utilises les mfc j'ai rien à rajouter à ce t'as dis chadenat sinon en api la fonction fait ce que tu veux :
 
BOOL OuvrirUnFichier(HWND hWnd, LPTSTR szNomDeFichier)
/* hWnd est le handle de la fénêtre appelante
   LPTSTR contiendra le nom du fichier séléctionné*/
{
 OPENFILENAME ofn;
 char szTmp[MAX_PATH];
 
 ZeroMemory(&ofn, sizeof(ofn));
 ZeroMemory(szTmp, sizeof(szTmp));
 szTmp[0] = '\0';
 
 ofn.lStructSize = sizeof(ofn);
 ofn.hwndOwner = hWnd;  
 ofn.lpstrFile = szTmp;  
 ofn.nMaxFile = MAX_PATH;
 ofn.lpstrFilter = "extension  (*.ext)\0*.ext\0"; /* tu    
                          remplaces par ton extension */
 ofn.nFilterIndex = 1;
        ofn.lpstrTitle = "Ouverture";
        ofn.lpstrInitialDir = NULL;
        ofn.lpstrCustomFilter = NULL;
        ofn.nMaxCustFilter = 0;
        ofn.lpstrFileTitle = NULL;
        ofn.nMaxFileTitle = 0;
        ofn.nFileOffset = 0;
        ofn.nFileExtension = 0;
        ofn.lpstrDefExt = NULL;
        ofn.lCustData = 0;
        ofn.lpfnHook = 0;
        ofn.lpTemplateName = 0;
        ofn.Flags = OFN_PATHMUSTEXIST; /* tu mets les  
                                  indicateurs adéquats */
 if (!GetOpenFileName(&ofn))
 {
  return FALSE;
 }
 
 lstrcpy(szNomDeFichier, (LPCTSTR)szTmp);
         
        return TRUE;
}

Reply

Marsh Posté le 24-05-2001 à 01:02:06    

Amadeus a écrit a écrit :

 
 ZeroMemory(szTmp, sizeof(szTmp));
 szTmp[0] = '\0';



une de ces deux lignes est superflue ... laquelle ? :D ('ttention y'a un piège, faut juste garder la plus rapide :))

Reply

Marsh Posté le 24-05-2001 à 01:35:16    

T'as pas tort mais bon ça fait du bien de faire un ZeroMemory rien que pour la beauté du geste :)
 

youdontcare a écrit a écrit :

 une de ces deux lignes est superflue ... laquelle ? :D ('ttention y'a un piège, faut juste garder la plus rapide :))



Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed