Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » VC++ / MFC » Ordner Suchen (UserDialog)

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
12.06.2004, 13:54 Uhr
~MaJu
Gast


Hi Leute,

Ich habe vollgendes Problemm:
Ich möchte innerhalb eines Dialoges 2 Ordner suchen lassen von User. Dies soll über Buttons "Durchsuchen" geschehen! Ich hab in einem buch einen Standartdialog gefunden aber der läst von User nur Dateien finden, aber nicht nur Ordner.
Kann mir mal Jemand einen StdDialog posten? Wenns möglich ist bitte mit allen Members! Ich wäre euch sehr verbunden!

MaJu
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
12.06.2004, 15:40 Uhr
~mike
Gast


Hi!
Der Dialog heißt SHBrowseForFolder

C++:
    BROWSEINFO bi = { 0 };
    bi.lpszTitle = _T("Pick a Directory");
    LPITEMIDLIST pidl = SHBrowseForFolder ( &bi );
    if ( pidl != 0 )
    {
        // get the name of the folder
        TCHAR path[MAX_PATH];
        if ( SHGetPathFromIDList ( pidl, path ) )
        {
            printf ( "Selected Folder: %s\n", path );
        }

        // free memory used
        IMalloc * imalloc = 0;
        if ( SUCCEEDED( SHGetMalloc ( &imalloc )) )
        {
            imalloc->Free ( pidl );
            imalloc->Release ( );
        }
    }



mfg
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
12.06.2004, 17:10 Uhr
~MaJu
Gast


Äääh??

Da sieht ich immer noch net durch! Was ist da was und vor allem wo krige ich hier den Phat zurück den ich dann weiter im Programm nutzen werde! Hilf mir mal auf die sprünge :
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
12.06.2004, 18:07 Uhr
~mike
Gast


Naja. Einfach Copy & Paste

Zitat:

vor allem wo krige ich hier den Phat zurück den ich dann weiter im Programm nutzen werde!


Die Frage sollte sich normal von selbst beantworten

C++:
        // get the name of the folder
        TCHAR path[MAX_PATH];
        if ( SHGetPathFromIDList ( pidl, path ) )
        {
            printf ( "Selected Folder: %s\n", path );
        }




mfg
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
12.06.2004, 18:22 Uhr
~MaJu
Gast


Sorry, ich habs gemerkt

nun hab ich aber ni neues problemm! Die zeichen kette soll jetzt in einem edit feld sein, aber da kommt nicht obwohl ich volgendes geschreiben habe:


C++:
void CVMCLGDlg::OnButton2() {
    char path[MAX_PATH];
    BROWSEINFO bi={ 0 };
    bi.lpszTitle=_T("Wählen sie einen Ordner");
    LPITEMIDLIST pidl=SHBrowseForFolder (&bi);
    if (pidl!=0) {
        SHGetPathFromIDList(pidl, path);
        //delete []pidl;
    }
    m_edit2=_T(path);
    //MessageBox(m_edit1);
    //MessageBox(path);
   UpdateData();
}

 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
12.06.2004, 18:41 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


es muss UpdateData(FALSE); heißen.

UpdateData(); oder UpdateData(TRUE); ist zum Speichern der Werte aus den Dialogfeldern in die Variablen, UpdateData(FALSE); zum "Senden" der Variablendaten an den Dialog
--
class God : public ChuckNorris { };
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ VC++ / MFC ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: