powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Запрет ввода определеннных символов в текстовое поле
10 сообщений из 10, страница 1 из 1
Запрет ввода определеннных символов в текстовое поле
    #37097783
Aisha11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день.
помогите решить следующую проблему:
имеется текстовое поле в которое пользователь вводит название, далее при нажатии на кнопку в корневом каталоге создается папка с введенным именем в текстовое поле, но как можно запретить ввод символов которые не должны содержаться в названии папки? (символы \ / : * ? " < > |) иначе Windows просто выдает ошибку и программа вылетает.
...
Рейтинг: 0 / 0
Запрет ввода определеннных символов в текстовое поле
    #37097852
Фотография Игорь Горбонос
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
> Автор: Aisha11
> Добрый день.
> помогите решить следующую проблему:
> символов которые не должны содержаться в названии папки? (символы \ / : * ? " < > |) иначе Windows просто выдает
> ошибку и программа вылетает.


А обработать ошибку нельзя и сказать пользователю что он неправ? Ведь в САМОМ виндовсе эти символы можно вводить и
сообщение выдается только когда идет попытка применить новое имя и винда при этом не вылетает :)

Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Запрет ввода определеннных символов в текстовое поле
    #37098061
Aisha11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
в винде когда задаешь имя папки и вводишь какой-либо из перечисленных символов то он сразу пишет что такой символ нельзя и просто не дает его ввести, вот и тут надо такой же принцип
...
Рейтинг: 0 / 0
Запрет ввода определеннных символов в текстовое поле
    #37098087
Фотография Игорь Горбонос
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
> Автор: Aisha11
> он сразу пишет что такой символ нельзя и просто не дает его ввести, вот и тут надо такой же принцип


Хм... Точно! :)
Ну так обработай InteractiveChange и ProgrammaticChange и KeyDown. В них проверяй на неправильные символы и сразу
сигнализируй.

Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Запрет ввода определеннных символов в текстовое поле
    #37098128
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
в TextBox.KeyPress() пропиши
Код: plaintext
1.
2.
3.
LPARAMETERS tnKeyCode, tnShiftAltCtrl
if tnKeyCode >  0  and chr(tnKeyCode) $ [\/:*?"<>|]
   nodefault
endif
...
Рейтинг: 0 / 0
Запрет ввода определеннных символов в текстовое поле
    #37098230
Aisha11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
большое спасибо
...
Рейтинг: 0 / 0
Запрет ввода определеннных символов в текстовое поле
    #37107396
CTAC-KO
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я в данном случае просто постфактом молча убираю недозволенные символы из текстбокса, т.к. иногда ведь данные туда могут попадать и через код, в смысле когда сработает ProgramaticChange().
Как бэ цель такого решения - не напрягать юзера мессагами про то, что там какие-то его, возможно случайно даже введенные, символы низзя юзать. Он набрал строку, я выкинул из нее че низзя и готов писать файл. Можно исправить строку и юзеру сказать что имя содержало таки недопустимые символы и типа пусть посмотрит прежде чем кликать по сейву....
это валид текстбокса:
Код: plaintext
1.
2.
* просто убиваем недозволенное для файловой системы - это *? и тд
this.Value = CHRTRAN(this.Value,[><|?*/\:"],"")
сюда я вроде из рфцэ по теме закинул все возможные недопустимые символы для винды.
...
Рейтинг: 0 / 0
Запрет ввода определеннных символов в текстовое поле
    #37108102
q1w1e1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dima T,

извиняюсь, что вмешиваюсь, но где можно почитать про
"nodefault"
на сайте http://foxclub.ru/rhproject/project/, в командах(это похоже на команду, а не на функцию или опцию...) не нашёл,
...
Рейтинг: 0 / 0
Запрет ввода определеннных символов в текстовое поле
    #37108673
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Запрет ввода определеннных символов в текстовое поле
    #37108691
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
q1w1e1,

F1 нажимаешь и читаешь
HELP VFPPrevents Visual FoxPro from performing its default event or method processing for Visual FoxPro events and methods.

NODEFAULT

Remarks
You can use NODEFAULT anywhere within the event or method procedure. You can also use NODEFAULT in an event or method procedure in the Form Designer. For example, including NODEFAULT in the KeyPress event procedure or function prevents Visual FoxPro from inserting the key press into the Visual FoxPro keyboard buffer. Therefore, you can create a KeyPress procedure so that you can test which key is pressed before the key is sent to the keyboard buffer.
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Запрет ввода определеннных символов в текстовое поле
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]