Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Фильтр файлов в OpenFileDialog, несколько типов файлов в одном фильтре 
V
    Опции темы
marcusmae
Дата 4.7.2006, 15:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


stravaganza
**


Профиль
Группа: Участник
Сообщений: 874
Регистрация: 26.3.2006

Репутация: 22
Всего: 39



Интересно, можно ли в фильтре файлов указать более одного расширения для одного названия? Т.е. нечто вроде

Image Files (*.gif, *.jpg)|*.gif,*.jpg|All Files (*.*)|*.*
( в таком виде не работает) 


--------------------
ἀπὸ μηχανῆς θεός
PM MAIL ICQ GTalk   Вверх
ivashkanet
Дата 4.7.2006, 15:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кодю потиху
****


Профиль
Группа: Участник Клуба
Сообщений: 3684
Регистрация: 23.2.2006
Где: Гомель, Беларусь

Репутация: 47
Всего: 149



А в MSDN-е сказано что можно  smile 
Код
openFileDialog1.Filter = "txt files (*.txt)|*.txt|All files (*.*)|*.*"

Возможно ошибка в том, что 
Цитата(marcusmae @  4.7.2006,  15:46 Найти цитируемый пост)
*.gif,*.jpg

нужно писать либо в скобках, либо через "|" 
PM MAIL WWW ICQ   Вверх
mr.DUDA
Дата 4.7.2006, 15:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


3D-маньяк
****


Профиль
Группа: Экс. модератор
Сообщений: 8244
Регистрация: 27.7.2003
Где: город-герой Минск

Репутация: 110
Всего: 232



В чётной части фильтра (второй, четвёртой, шестой и т.д.) разделитель должен быть не "запятая" а "точка с запятой":

Цитата
Image Files(*.BMP, *.JPG, *.GIF)|*.BMP;*.JPG;*.GIF|All files (*.*)|*.* 


 


--------------------
user posted image
PM MAIL WWW   Вверх
ivashkanet
Дата 4.7.2006, 16:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кодю потиху
****


Профиль
Группа: Участник Клуба
Сообщений: 3684
Регистрация: 23.2.2006
Где: Гомель, Беларусь

Репутация: 47
Всего: 149



Цитата(mr.DUDA @  4.7.2006,  15:59 Найти цитируемый пост)
 чётной части фильтра (второй, четвёртой, шестой и т.д.) разделитель должен быть не "запятая" а "точка с запятой"

 smile Ого, а почему именно четной.
В MSDN о четности ни слова. Все написано через ";"
Цитата

You can add several filter patterns to a filter by separating the file types with semicolons, for example, "Image Files(*.BMP;*.JPG;*.GIF)|*.BMP;*.JPG;*.GIF|All files (*.*)|*.*"
 
PM MAIL WWW ICQ   Вверх
marcusmae
Дата 4.7.2006, 16:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


stravaganza
**


Профиль
Группа: Участник
Сообщений: 874
Регистрация: 26.3.2006

Репутация: 22
Всего: 39



Cпасибо. Запятая была неудачной догадкой  smile 
 


--------------------
ἀπὸ μηχανῆς θεός
PM MAIL ICQ GTalk   Вверх
mr.DUDA
Дата 4.7.2006, 16:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


3D-маньяк
****


Профиль
Группа: Экс. модератор
Сообщений: 8244
Регистрация: 27.7.2003
Где: город-герой Минск

Репутация: 110
Всего: 232



Цитата(ivashkanet @  4.7.2006,  16:05 Найти цитируемый пост)
Ого, а почему именно четной.
В MSDN о четности ни слова.

Нечётная часть - это то что выводится в комбобоксе, чётная - это соответствующий ей фильтр, т.е. смысловая часть именно в чётной части фильтра, а описание можно любое заколбасить.

Описание есть в мсдн, правда в другом разделе, в WinAPI smile

Цитата
lpstrFilter

Long pointer to a buffer that contains pairs of null-terminated filter strings. The last string in the buffer must be terminated by two NULL characters. 
The first string in each pair is a display string that describes the filter (for example, Text Files), and the second string specifies the filter pattern (for example, *.TXT). To specify multiple filter patterns for a single display string, use a semicolon to separate the patterns (for example, *.TXT;*.DOC;*.BAK). A pattern string can be a combination of valid file name characters and the asterisk (*) wildcard character. Do not include spaces in the pattern string. 

The system does not change the order of the filters. It displays them in the File Types combo box in the order specified in lpstrFilter. 

If lpstrFilter is NULL, the dialog box does not display any filters. 

 


--------------------
user posted image
PM MAIL WWW   Вверх
ivashkanet
Дата 4.7.2006, 16:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кодю потиху
****


Профиль
Группа: Участник Клуба
Сообщений: 3684
Регистрация: 23.2.2006
Где: Гомель, Беларусь

Репутация: 47
Всего: 149



Ааа, ты про эту "четную" часть...
Ну тогда здесь четкое разделение: Четная смысловая часть берется в скобки

Добавлено @ 16:34 
Цитата(marcusmae @  4.7.2006,  16:13 Найти цитируемый пост)
догадкой

 smile 
Зачем гадать, если MSDN есть  smile  
PM MAIL WWW ICQ   Вверх
mr.DUDA
Дата 4.7.2006, 17:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


3D-маньяк
****


Профиль
Группа: Экс. модератор
Сообщений: 8244
Регистрация: 27.7.2003
Где: город-герой Минск

Репутация: 110
Всего: 232



Цитата(ivashkanet @  4.7.2006,  16:33 Найти цитируемый пост)
 Четная смысловая часть берется в скобки

Скобки там вообще ни причём. Можно хоть со скобками, хоть без скобок. Чётная и нечётная часть отделяются символом "|". 


--------------------
user posted image
PM MAIL WWW   Вверх
ivashkanet
Дата 4.7.2006, 17:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кодю потиху
****


Профиль
Группа: Участник Клуба
Сообщений: 3684
Регистрация: 23.2.2006
Где: Гомель, Беларусь

Репутация: 47
Всего: 149



Цитата(mr.DUDA @  4.7.2006,  17:06 Найти цитируемый пост)
 Чётная и нечётная часть отделяются символом "|"

Точно... Туплю  smile  
PM MAIL WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема »


 




[ Время генерации скрипта: 0.0514 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.