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 :

[MFC]Selection repertoire CFileDialog


Sujet :

MFC

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    47
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 47
    Points : 25
    Points
    25
    Par défaut [MFC]Selection repertoire CFileDialog
    Bonjour,
    J'utilise un objet qui hérite de CFileDialog, cependant, je remarque que le path renvoyé est récupéré de deux façons différentes : soit j ai choisi un fichier auquel cas, un appel a la méthode GetPathName renvoie le bon endroit, soit je veux tout importer le répertoire et la, je récupère le contenu de la textEdit... mais la y a un soucis : le path de la text edit comporte des points de suspension pour écourter le path quand il est trop long, et je n ai pas le bon chemin...
    Comment récupérer le bon chemin pour importer tout? le getpathname ne fonoctionne que si un fichier a été sélectionné ce qui n'est pas le cas pour ce probleme...
    Help!

  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
    Points : 17 323
    Points
    17 323
    Par défaut
    salut,
    si c'est pour recuperer la selection d'un repertoire il est peut etre plus judicieux d'utiliser l'api SHBrowseForFolder:
    http://c.developpez.com/faq/vc/?page...s#SelectFolder

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    47
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 47
    Points : 25
    Points
    25
    Par défaut
    Ha ben oui mais non
    La classe dont je parle qui hérite de CFileDialog est assez complexe, en plus de rajouter les l'importation d'un répertoire entier, elle propose des outils de visualisation automatique des média présent dans ces répertoires.
    Donc je suis un peu obligé de passer par elle dans ce cas... et je ne vais pas demander à mojn utilisateur de refaire une sélection de répertoire après être arrivé sur cette fenêtre...

    Va vraiment falloir que je compose avec CFileDialog...
    j'ai vu un truc ayant rapport au m_ofn de CFileDialog mais je ne vois pas bien l'utilisation... C'est peut etre une piste...

    Je continue à chercher... Et suis toujours à l'écoute de vos propositions.

  4. #4
    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
    Points : 17 323
    Points
    17 323
    Par défaut
    re,
    si j'ai bien compris ton pb tu selectionne ton repertoire et tu fais ok
    et tu veux recuperer le la selection en cours , c'est ça ?


  5. #5
    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
    Points : 17 323
    Points
    17 323
    Par défaut
    re,
    je crois avoir la solution a ton pb:
    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
     
    /////////////////////////////////////////////////////////////////////////////
    // CMyFileDialog
     
    class CMyFileDialog : public CFileDialog
    {
    	DECLARE_DYNAMIC(CMyFileDialog)
     
    public:
    	CMyFileDialog(BOOL bOpenFileDialog, // TRUE for FileOpen, FALSE for FileSaveAs
    		LPCTSTR lpszDefExt = NULL,
    		LPCTSTR lpszFileName = NULL,
    		DWORD dwFlags = OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,
    		LPCTSTR lpszFilter = NULL,
    		CWnd* pParentWnd = NULL);
     
    virtual void OnFolderChange( );
     
    public:
    	CString m_szDirName;
     
    protected:
    	//{{AFX_MSG(CMyFileDialog)
    		// NOTE - the ClassWizard will add and remove member functions here.
    	//}}AFX_MSG
    	DECLARE_MESSAGE_MAP()
    };
     
     
    IMPLEMENT_DYNAMIC(CMyFileDialog, CFileDialog)
     
    CMyFileDialog::CMyFileDialog(BOOL bOpenFileDialog, LPCTSTR lpszDefExt, LPCTSTR lpszFileName,
    		DWORD dwFlags, LPCTSTR lpszFilter, CWnd* pParentWnd) :
    		CFileDialog(bOpenFileDialog, lpszDefExt, lpszFileName, dwFlags, lpszFilter, pParentWnd)
    {
    }
     
     
    BEGIN_MESSAGE_MAP(CMyFileDialog, CFileDialog)
    	//{{AFX_MSG_MAP(CMyFileDialog)
    		// NOTE - the ClassWizard will add and remove mapping macros here.
    	//}}AFX_MSG_MAP
    END_MESSAGE_MAP()
     
    /*virtual*/ void CMyFileDialog::OnFolderChange()
    {
    	// 
    	char buf[256];
    	CommDlg_OpenSave_GetFolderPath( GetParent()->m_hWnd, buf, 256 );
    	m_szDirName = buf;
    }
    apres domodal m_szDirName contient le chemin complet du repertoire en cours de selection.


  6. #6
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    47
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 47
    Points : 25
    Points
    25
    Par défaut
    DOH!
    C'est vraiment nécessaire de faire le tout en dynamique?
    ta méthode CommDlg_OpenSave_GetFolder elle sort d'ou?
    C'est la folie, je suis obligé d'aller jusqu'a surcharger le constructeur!!!?

    damned!
    Je te pose mon code que tu aies une idée, mais la ta solution m apparait un poil complexe... En fait j'imaginais aussi recomposer le path dans une propriété, mais je ne voyais pas comment récupérer le changement de folder...

    ca c est le header

    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
     
    //-------------------------
    // ImptDlg.h : header file
    //-------------------------
     
    /////////////////////////////////////////////////////////////////////////////
    // CImageDlg window
     
    #include "thumbWnd.h"
     
    /////////////////////////////////////////////////////////////////////////////
    // CImportDlg dialog
     
    class CImportDlg : public CFileDialog
    {
    	LANGID		curLangID;		// Langage utilisé
    	CThumbWnd	m_ImageDlg;		// Preview de l'image
    	CString		m_nameFic;		// Nom du fichier sélectionné
     
    // Construction
    public:
    	CImportDlg(LANGID langID, CWnd* pParent = NULL);   // standard constructor
    	CString path;
    	BOOL	m_bImportAll;
     
    // Dialog Data
    	//{{AFX_DATA(CImportDlg)
    		// NOTE: the ClassWizard will add data members here
    	//}}AFX_DATA
     
    // Overrides
    	// ClassWizard generated virtual function overrides
    	//{{AFX_VIRTUAL(CImportDlg)
    	//}}AFX_VIRTUAL
     
    protected:
    	virtual void OnFileNameChange();
    	virtual void OnLBSelChangedNotify(UINT nIDBox, UINT iCurSel, UINT nCode);
     
    // Implementation
    protected:
     
    	// Generated message map functions
    	//{{AFX_MSG(CImportDlg)
    	virtual void OnOK();
    	virtual BOOL OnInitDialog();
    	afx_msg void OnImporterTout();
    	//}}AFX_MSG
    	DECLARE_MESSAGE_MAP()
    };
    et ca le cpp
    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
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
    198
    199
    200
    201
    202
    203
    204
    205
    206
    207
    208
    209
    210
    211
    212
    213
    214
    215
    216
    217
    218
    219
    220
    221
    222
    223
    224
    225
    226
    227
    228
    229
    230
    231
    232
    233
    234
    235
    236
    237
    238
    239
    240
    241
    242
    243
    244
    245
    246
    247
    248
    249
    250
    251
    252
    253
     
    //-----------------------------------
    // ImptDlg.cpp : implementation file
    //-----------------------------------
     
    #include "StdAfx.h"
    #include "Resource.h"
     
    #include <Dlgs.h>
    #include "..\Outils\ExRes.h"
    #include "..\Outils\File.h"
    #include "..\Format\Dib.h"
     
    #include "thumbWnd.h"
    #include "ImptDlg.h"
     
    #ifdef _DEBUG
    #define new DEBUG_NEW
    #undef THIS_FILE
    static char THIS_FILE[] = __FILE__;
    #endif
     
     
    //=======================================================================
    //	Load format lists (please keep alphabetical)  
    //=======================================================================
     
    LPCSTR			pcszLoadFormatList = \
    	"All files (*.*)" 			"\0"	"*.*"	"\0"	\
    	"AFX  (*.afx)" 				"\0"	"*.afx"	"\0"	\
    	"AT&T Group 4 (*.att)"		"\0"	"*.att"	"\0"	\
    	"Brook Trout (*.301)"		"\0"	"*.301"	"\0"	\
    	"CALS (*.cal)" 				"\0"	"*.cal"	"\0"	\
    	"Clip Board (*.clp)" 		"\0"	"*.clp"	"\0"	\
    	"Gem IMG (*.img)" 			"\0"	"*.img"	"\0"	\
    	"Halo CUT (*.cut)"			"\0"	"*.cut"	"\0"	\
    	"IBM MO:DCA (*.mod)" 		"\0"	"*.mod"	"\0"	\
    	"IFF ILBM (*.iff)"			"\0"	"*.iff"	"\0"	\
    	"Imnet (*.imt)"				"\0"	"*.imt"	"\0"	\
    	"JPEG (*.jpg)" 				"\0"	"*.jpg"	"\0"	\
    	"Kofax (*.kfx)"				"\0"	"*.kfx"	"\0"	\
    	"Laser View (*.lv)"			"\0"	"*.lv"	"\0"	\
    	"Mac Paint (*.mac)"			"\0"	"*.mac"	"\0"	\
    	"Mac Pict (*.pct)"			"\0"	"*.pct"	"\0"	\
    	"Meta File (*.wmf)"			"\0"	"*.wmf"	"\0"	\
    	"MS Paint (*.msp)"			"\0"	"*.msp"	"\0"	\
    	"Multipage PCX (*.dcx)" 	"\0"	"*.dcx"	"\0"	\
    	"NCR (*.ncr)"				"\0"	"*.ncr"	"\0"	\
    	"PBM (*.pbm)"				"\0"	"*.pbm"	"\0"	\
    	"PCT (*.pct)"				"\0"	"*.pct"	"\0"	\
    	"PCX (*.pcx)"				"\0"	"*.pcx"	"\0"	\
    	"PGM (*.pgm)"				"\0"	"*.pgm"	"\0"	\
    	"Photo CD (*.pcd)"			"\0"	"*.pcd"	"\0"	\
    	"Photo Shop (*.psd)" 		"\0"	"*.psd"	"\0"	\
    	"PNG (*.png)"				"\0"	"*.png"	"\0"	\
    	"Postscript (*.eps)" 		"\0"	"*.eps"	"\0"	\
    	"PPM (*.ppm)"				"\0"	"*.ppm"	"\0"	\
    	"Silicon Graphics (*.sgi)"	"\0"	"*.sgi"	"\0"	\
    	"Story Board (*.gx2)"		"\0"	"*.gx2"	"\0"	\
    	"Sun Raster (*.ras)" 		"\0"	"*.ras"	"\0"	\
    	"Targa (*.tga)"				"\0"	"*.tga"	"\0"	\
    	"Tiff (*.tif)" 				"\0"	"*.tif"	"\0"	\
    	"Windows Bitmap (*.bmp)"	"\0"	"*.bmp"	"\0"	\
    	"Windows DIB (*.dib)"		"\0"	"*.dib"	"\0"	\
    	"Windows RLE (*.rle)"		"\0"	"*.rle"	"\0"	\
    	"Windows ICON (*.ico)"		"\0"	"*.ico"	"\0"	\
    	"Word Perfect (*.wpg)"		"\0"	"*.wpg"	"\0"	\
    	"X Bitmap (*.xbm)"			"\0"	"*.xbm"	"\0"	\
    	"X Pixmap (*.xpm)"			"\0"	"*.xpm"	"\0"	\
    	"X Window Dump (*.xwd)" 	"\0"	"*.xwd"	"\0"	\
    	"\0";
     
    //=======================================================================
    //	Load format lists (please keep alphabetical)  
    //=======================================================================
     
    /////////////////////////////////////////////////////////////////////////////
    // CImportDlg dialog
     
    //: CFileDialog(FALSE, NULL, "*.bmp", OFN_HIDEREADONLY | OFN_ENABLETEMPLATE, NULL, pParent)
     
    //--------------
    // Constructeur
    //--------------
    CImportDlg::CImportDlg(LANGID langID, CWnd* pParent)
    	: CFileDialog(FALSE, NULL, NULL, 
    			OFN_HIDEREADONLY | OFN_ENABLETEMPLATE, 
    			NULL, pParent)
    {
    	// Récupération du langage
    	curLangID = langID;
     
    	// Récupération du répertoire d'importation
    	CString initDir = AfxGetApp()->GetProfileString("Import", "Path", "C:\\");
     
    	// Test de l'existence du répertoire
    	CFichier fic;
    	if (!fic.RepExiste(initDir)) initDir = "C:\\";
     
    	// Sauvegarde du répertoire
    	AfxGetApp()->WriteProfileString("Import", "Path", initDir);
     
    	// Définition de la boite de dialogue
    	m_ofn.Flags &= ~OFN_EXPLORER;
    	m_ofn.lpstrFilter = pcszLoadFormatList;
     
    	// Langue allemande
    	if (curLangID == LANG_GERMAN) {
    		m_ofn.hInstance = AfxFindResourceHandle(MAKEINTRESOURCE(IDD_FILEIMPORT_DL), RT_DIALOG);
    		m_ofn.lpTemplateName = MAKEINTRESOURCE(IDD_FILEIMPORT_DL);
    	}
     
    	// Langue francaise
    	else if (curLangID == LANG_FRENCH) {
    		m_ofn.hInstance = AfxFindResourceHandle(MAKEINTRESOURCE(IDD_FILEIMPORT_FR), RT_DIALOG);
    		m_ofn.lpTemplateName = MAKEINTRESOURCE(IDD_FILEIMPORT_FR);
    	}
     
    	// Langue anglaise
    	else {
    		m_ofn.hInstance = AfxFindResourceHandle(MAKEINTRESOURCE(IDD_FILEIMPORT_US), RT_DIALOG);
    		m_ofn.lpTemplateName = MAKEINTRESOURCE(IDD_FILEIMPORT_US);
    	}
     
    	SetCurrentDirectory(initDir);
    	m_ofn.lpstrInitialDir = initDir;
     
    	// Pas de fichiers sélectionnés
    	m_nameFic.Empty();
     
    	// Pas d'importation de tout
    	m_bImportAll = FALSE;
     
    	//{{AFX_DATA_INIT(CImportDlg)
    	//}}AFX_DATA_INIT
    }
     
     
    BEGIN_MESSAGE_MAP(CImportDlg, CDialog)
    	//{{AFX_MSG_MAP(CImportDlg)
    	ON_BN_CLICKED(IDC_IMPORTER_TOUT, OnImporterTout)
    	//}}AFX_MSG_MAP
    END_MESSAGE_MAP()
     
     
    /////////////////////////////////////////////////////////////////////////////
    // CImportDlg message handlers
     
    //----------------------------------------
    // Initialisation de la boite de dialogue
    //----------------------------------------
    BOOL CImportDlg::OnInitDialog() 
    {
    	CFileDialog::OnInitDialog();
     
    	m_ImageDlg.SubclassDlgItem(IDC_IMPORT_THUMBNAIL, this);
     
    	return TRUE;
    }
     
    //--------------------------------
    // Modification du nom du fichier
    //--------------------------------
    void CImportDlg::OnFileNameChange()
    {
    	ASSERT_VALID(this);
    	GetDlgItemText(edt1, m_nameFic);
    //	if (m_nameFic.IsEmpty())
    //		SetDlgItemText(edt1, "*.bmp");
    }
     
    //--------------------------
    // Modification de la liste
    //--------------------------
    void CImportDlg::OnLBSelChangedNotify(UINT nIDBox, UINT iCurSel, UINT nCode)
    {
    	ASSERT_VALID(this);
     
    	// Modification de la liste des répertoires
    	if (nIDBox == lst2) {
     
    		// Pas de fichiers sélectionnés
    		m_nameFic.Empty();
     
    		// Disparition de la preview
    		m_ImageDlg.SetImage(m_nameFic);
    	}
     
    	// Modification de la liste des noms de fichiers
    	else if (nIDBox == lst1) {
     
    		// Récupération du répertoire
    		CString strFic;
    		GetDlgItemText(stc1, strFic);
    		if (strFic.Right(1) != "\\") strFic += "\\";
     
    		// Récupération du nom du fichier
    		GetDlgItemText(edt1, m_nameFic);
    		strFic += m_nameFic;
     
    		// Affichage de la preview
    		m_ImageDlg.SetImage(strFic);
     
    		// Mise à jour de la boite d'édition
    //		SetDlgItemText(edt1, "*.bmp");
    	}	
     
    	CFileDialog::OnLBSelChangedNotify(nIDBox, iCurSel, nCode);	
    }
     
    //-----------
    // Bouton OK
    //-----------
    void CImportDlg::OnOK() 
    {
    	// Fichier image sélectionné
    	if (!m_nameFic.IsEmpty()) {
     
    		// Récupération du répertoire d'importation
    		CString initDir;
    		GetDlgItemText(stc1, initDir);
     
    		// Sauvegarde du répertoire
    		AfxGetApp()->WriteProfileString("Import", "Path", initDir);
     
    		// Ecriture du nom du fichier pour la validation
    		//SetDlgItemText(edt1, m_nameFic);
     
    		// Pas d'importation de tout
    		m_bImportAll = FALSE;
     
    		CFileDialog::OnOK();
    	}
    }
     
     
     
    //----------------------------------
    // Importation de toutes les images
    //----------------------------------
    void CImportDlg::OnImporterTout()
    {
    	// Récupération du répertoire d'importation
    	CString initDir;
    	GetDlgItemText(stc1, initDir);
     
    	// Sauvegarde du répertoire
    	AfxGetApp()->WriteProfileString("Import", "Path", initDir);
     
    	// Importation de tout
    	m_bImportAll = TRUE;
    	EndDialog(IDOK);
    }
    Ca te parle?
    Honnêtement j'ai bien peur de ne pas comprendre grand chose a ce que tu m as proposé...

  7. #7
    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
    Points : 17 323
    Points
    17 323
    Par défaut
    re,
    boooe ,c'est pas tres compliqué lol,
    le constructeur tu t'en fous j'ai simplement generé par classwizard une classe derivée de CFileDialog.
    la seule fonction a rajoutée c'est virtual void OnFolderChange( );
    la fonction barbarre CommDlg_OpenSave_GetFolderPath
    elle sort de MSDN lol ,

  8. #8
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    47
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 47
    Points : 25
    Points
    25
    Par défaut
    OK j ai ajouté la fonction mais je dois avoir oublié un truc car lors du changement de répertoire, il na passe pas par onFolderChange
    ...
    Y a pas un message map a mettre ou alors peut que je me suis fourvoyé dans l init de mes windows... c est important de garder la parent Wnd?

  9. #9
    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
    Points : 17 323
    Points
    17 323
    Par défaut
    non pas de message map la fonction est virtuelle et fait partie de la classe CFIleDialog regarde la doc : a mon avis tu as un pb de minuscule /majuscule
    et du coup c'est plus la meme fonction.

Discussions similaires

  1. [MFC]Multiselect avec CFileDialog => FNERR_BUFFERTOOSMAL
    Par kidpaddle2 dans le forum Windows
    Réponses: 0
    Dernier message: 01/12/2007, 14h43
  2. [MFC] Selection dans un CTreeCtrl et bi-écran
    Par Grimdol dans le forum MFC
    Réponses: 4
    Dernier message: 08/06/2006, 16h01
  3. MFC : selection d'un fichier / repertoire
    Par firejocker dans le forum MFC
    Réponses: 4
    Dernier message: 07/04/2006, 16h53
  4. [MFC] Selection permanente avec un ListCtrl
    Par pataguillon dans le forum MFC
    Réponses: 5
    Dernier message: 07/07/2005, 12h10
  5. [MFC] selection ligne CListCtrl
    Par abignon dans le forum MFC
    Réponses: 3
    Dernier message: 25/06/2004, 12h56

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