Filters

De informatie in deze sectie geldt voor zowel de Verkenner-stijl en de oude stijl dialoogvensters openen en Opslaan als.

U kunt bieden filename filters om te helpen de gebruiker in het beperken van de bestandsnamen die in het dialoogvenster weergegeven. Een filename filter bestaat uit een paar van null eindigende tekenreeksen, een beschrijving en een patroon, een samengevoegd naar de andere. Het dialoogvenster bevat een beschrijving om te laten de gebruiker kiezen welke filter te gebruiken; en het maakt gebruik van het patroon om de bestanden weergeven te selecteren.

De filters opgeven, stelt u de lpstrFilter lid van de NAAMOPENBESTAND structuur om te wijzen op een buffer die een matrix van reeksparen op filter bevat. De laatste tekenreeks in de matrix moet worden gevolgd door een extra null-teken.

Een patroon string kunnen een combinatie zijn van geldige bestandsnaam tekens en het sterretje. Het sterretje is een jokerteken dat elke combinatie van geldige bestandsnaam tekens vertegenwoordigt. Het dialoogvenster worden alleen de bestanden die overeenkomen met het patroon weergegeven. Meerdere patronen voor dezelfde beschrijving opgeven, moet u een puntkomma (;) te scheiden van de patronen. Opmerking dat spaties in de tekenreeks patroon tot onverwachte resultaten leiden kunnen.

Het volgende codefragment geeft twee filters. Het filter met de "Bron" beschrijving heeft twee patronen. Als de gebruiker dit filter selecteert, het dialoogvenster verschijnt alleen bestanden die hebben de.C en.CXX extensies.

NAAMOPENBESTAND ofn;       / / common dialog box structuur

ofn.lpstrFilter = "Source\0 *.C; *.CXX\0All\0*.*\0 "
ofn.nFilterIndex = 1 

De nFilterIndex lid van de NAAMOPENBESTAND structuur geeft een index die aangeeft welk filter in het dialoogvenster aanvankelijk gebruikt. Het eerste filter in de buffer heeft indexnummer 1, het tweede 2, enzovoort. Als de gebruiker wijzigingen het filter tijdens het gebruik van het dialoogvenster, lid van de nFilterIndex is ingesteld op de index van de geselecteerde filter op terug.

U kunt een aangepast filter maken door het lid lpstrCustomFilter op het adres van een buffer die een filter voor één bevat, en door het lid nMaxCustFilter op de grootte van de buffer, in tekens of bytes. Het dialoogvenster altijd het aangepaste filter plaatsen aan het begin van de lijst met filters en, bij terugkeer, altijd bijgewerkt het patroon deel van het filter met het patroon van de door de gebruiker geselecteerd filter.

Voor dialoogvensters Verkenner-stijl, kan de standaardextensie veranderen als de gebruiker een ander filter selecteert. Als de gebruiker een filter wiens eerste patroon van het formulier is selecteert *.xxx (dat wil zeggen de uitbreiding omvat niet een jokerteken), het dialoogvenster xxx gebruikt als de standaardextensie. Dit gebeurt alleen als u een standaardextensie in het lid lpstrDefExt van de NAAMOPENBESTAND structuur hebt opgegeven. Bijvoorbeeld, als de gebruiker selecteert de "Source\0 *.C; *.CXX\0 "filter, de standaardextensie verandert in"C". Echter, als u had gedefinieerd de filter als "Source\0 *.C * \0 ", de standaardextensie zou niet meer wijzigen, omdat de uitbreiding een vervanging omvat.

Index