Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Где запретить недопустимые символы в имени файла


Страницы:   1 2 3

Aleks ©   (2006-10-26 01:03:00) 

Доброго времени суток.
В программе при создании имени файла используется  InputBox.
Где или как запретить пользователю ввод некоторых символов.


Джо   (2006-10-26 02:47:00) [41]

Замучаешься решать, что оно допустимо, а что нет. Ладно бы только символы (в 9x, например, "+" недопустим, кажется), а еще специальные имена и прочая, прочая, прочая...


Ketmar   (2006-10-26 02:38:00) [42]

>[9] Германн(c) 26-Oct-2006, 02:34
>А так, насчет InputQuery?
да однофигственно. суть не меняется. можно и InputBox'ами юзера доставать в цикле -- пока не введёт именно то, что автору программы хотелось. %-)
а можно построить свой аналог с любой необходимой функциональностью. тем более, что на основе готового кода оно несложно. автору же вопроса будет ещё и полезно -- наверняка узнает что-нибудь новое.


Германн   (2006-10-26 02:34:00) [43]


> Ketmar ©   (26.10.06 02:27) [8]
>
> >[7] Германн(c) 26-Oct-2006, 02:01
> >Имхо стандартные диалоги в Дельфи позволяют вводить в
> >строку ввода любые символы, в т.ч. и недопустимые. Они
> >лишь не выходят из Execute, если имя недопустимое.
> InputBox -- это, если мне не изменяет склероз, из Dialogs.
> pas.
> (глянул: таки точно оттуда)
> это просто динамически создаваемая форма, не более. берём
> исходник функции -- и перерабатываем под свои нужды. дел-
> то? %-)
>

Да. Я тебя не так понял. Я имел в виду TxxxDialog.
А так, насчет InputQuery? Тут ведь Серёга прав. Джо ©   (26.10.06 01:17) [1]


Ketmar   (2006-10-26 02:27:00) [44]

>[7] Германн(c) 26-Oct-2006, 02:01
>Имхо стандартные диалоги в Дельфи позволяют вводить в
>строку ввода любые символы, в т.ч. и недопустимые. Они
>лишь не выходят из Execute, если имя недопустимое.
InputBox -- это, если мне не изменяет склероз, из Dialogs.pas.
(глянул: таки точно оттуда)
это просто динамически создаваемая форма, не более. берём исходник функции -- и перерабатываем под свои нужды. дел-то? %-)


Германн   (2006-10-26 02:01:00) [45]


> Ketmar ©   (26.10.06 01:47) [6]
>
> не проще ли взять исходник Dialogs и смоделировать своё
> окошко ввода "по образу и подобию"?
>

Имхо стандартные диалоги в Дельфи позволяют вводить в строку ввода любые символы, в т.ч. и недопустимые. Они лишь не выходят из Execute, если имя недопустимое.


Ketmar   (2006-10-26 01:47:00) [46]

есть. только ты этого не напишешь. а если дадут код -- не поймёшь. рано ещё.
не проще ли взять исходник Dialogs и смоделировать своё окошко ввода "по образу и подобию"?


Aleks   (2006-10-26 01:42:00) [47]

Где отловить ошибку.
В каком обработчике, и вообще есть ли возможность контролировать во время ввода в InputBoxе, что туда вводят, какие символы.


Zeqfreed   (2006-10-26 01:21:00) [48]

Хотя, с точки зрения удобства, самый хороший вариант это выводить некоторую ненавящевую подсказку в непосредственной близости от контрола с некоторой задержкой (при ручном вводе).


Zeqfreed   (2006-10-26 01:19:00) [49]

Лучше заменить InputBox более человечными элементами интерфейса, а проверку выполнять перед непосредственным выходом из текущего диалога (нажатие OK/Apply/Next и т.д.) и при необходимости оповещать пользователя о неправильности ввода.


Джо   (2006-10-26 01:17:00) [50]

Это дело ОС решать, допустимо оно там или нет. Просто обрабатывай ошибку.


Германн   (2006-10-26 01:17:00) [51]

А почему InputBox, а не TSaveDialog?


Страницы:   1 2 3

Наверх

Титульная страница Поиск, карта сайта Написать письмо