![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Delphi, OpenGL API
Форумчанин
Регистрация: 29.03.2010
Сообщений: 152
|
![]()
Здравствуйте!
Подскажите пожалуйста как в компоненте TSaveDialog сделать так, чтобы при изменении свойства FilterIndex изменялось расширение указанное в свойстве FileName согласно FilterIndex. В общем я хочу сделать так, чтобы при сохранении расширение добавлялось автоматически к введенному имени файла. Главная проблема заключается в том, что во время вызова TSaveDialog не возможно изменить свойство FileName что можно увидеть из следующего примера: Код:
![]() Последний раз редактировалось Stilet; 01.06.2010 в 14:40. |
![]() |
![]() |
![]() |
#2 |
Otsukitakitte
Форумчанин
Регистрация: 01.10.2009
Сообщений: 126
|
![]()
Трудно так рассуждать...
Если идёт выбор из индекса фильтра, то зачем еще раз приписывать название расширения? Если бы вспомнил как там... как-то на подобии: Код:
Помог - ставь плюс.
$("question").onAnswer(function() { $(this).getItWright(true); }); |
![]() |
![]() |
![]() |
#3 |
Участник клуба
Регистрация: 09.11.2007
Сообщений: 1,762
|
![]()
А зачем тебе вообще менять FileName, пусть остаётся как было. Просто в процедуре сохранения, изходя из FilterIndex подставляй своё расширение к файлу.
|
![]() |
![]() |
![]() |
#4 |
Участник клуба
Регистрация: 11.01.2009
Сообщений: 1,917
|
![]()
Нажимаешь на кнопку, появляется диалог (SaveDialog) и после нажатия на кнопку "Сохранить" у тебя есть все что нужно:
1) желаемое имя файла : Savedialog1.Filename (полный путь + имя) 2) номер (индекс) расширения, который выбран пользователем в выпадающем списке: SaveDialog1.FilterIndex Теперь можешь сформировать имя файла и сохранять его ... Код:
При нажатии копки "Сохранить" сам диалог ничего не делает кроме того что закрывается, оставляя у себя параметры ...
"Заряженному танку в дуло не смотрят" @Dekmer in WoT
|
![]() |
![]() |
![]() |
#5 |
Delphi, OpenGL API
Форумчанин
Регистрация: 29.03.2010
Сообщений: 152
|
![]()
За пример применения FilterName спасибо конечно, но как пользователь увидит изменения расширения имени файла во время изменения индекса фильтра FilterIndex? SaveDialog1 то уже вызван, а во время работы его окна, FileName не хочет меняться ни как. Сам проверял.
![]() Последний раз редактировалось Miha85193; 01.06.2010 в 19:08. |
![]() |
![]() |
![]() |
#6 |
Delphi, OpenGL API
Форумчанин
Регистрация: 29.03.2010
Сообщений: 152
|
![]()
В том то все и дело, что пользователь изменяя расширение в выпадающем списке в низу диалога, должен видеть изменение расширения имени файла в области "Имя файла".
|
![]() |
![]() |
![]() |
#7 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
![]()
а вы видели в какой то программе подобное?(где именно стандартный диалог)
думаю нет, пишите свою форму диалога, раз так сильно хочется. Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
![]() |
![]() |
![]() |
#8 |
Форумчанин
Регистрация: 24.04.2010
Сообщений: 205
|
![]()
Вот сделал прогу там SaveDialog нажимайте все нормально только в фильтре нужно указать.
![]() |
![]() |
![]() |
![]() |
#9 |
Delphi, OpenGL API
Форумчанин
Регистрация: 29.03.2010
Сообщений: 152
|
![]()
Ну конечно же. В Winword 2003 именно такой диалог.
Последний раз редактировалось Miha85193; 15.06.2010 в 01:56. |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
использывание TSaveDialog | iliili | Помощь студентам | 4 | 21.03.2010 12:05 |
TSaveDialog и иницилизация COM в главном потоке. | nik531 | Компоненты Delphi | 0 | 05.02.2010 10:38 |
регистрация расширения | Djonik | Общие вопросы Delphi | 2 | 08.11.2009 09:10 |
реестр, расширения | StartMis | Общие вопросы Delphi | 6 | 06.11.2008 20:01 |
Tsavedialog | Ensoph | Компоненты Delphi | 7 | 01.04.2008 08:31 |