Вход | Регистрация


1С:Предприятие ::

Метки:

v7: Ввод английских символов

Я
   Merlin2006
 
21.02.08 - 16:18
Привет.
Никто незнает. Как сделать в поле ввода ввод только английских символов, а на русские ругаться?!
 
 
   Мулька
 
1 - 21.02.08 - 16:19
Проверяй посимвольно потом
   Merlin2006
 
2 - 21.02.08 - 16:20
А других вариантов нет?!
   Sadovnikov
 
3 - 21.02.08 - 16:22
Можно попробовать поиграться с событием ПриОтжатииКнопкиКлавиатуры()
   Merlin2006
 
4 - 21.02.08 - 16:24
А это не стандартная функция!?
5
6
   Sadovnikov
 
5 - 21.02.08 - 16:27
(4) Это событие FormEx-а
   gopher
 
6 - 21.02.08 - 16:27
(4) это 1с++
   Merlin2006
 
7 - 21.02.08 - 16:28
Не подойдет.
8
   Sadovnikov
 
8 - 21.02.08 - 16:30
(7) О как! Эт почему? Религия не позволяет?
Или просто не ищем легких путей в жизни?
9
   Яндекс
 
9 - 21.02.08 - 16:31
(8)О как, а что свойства Маска уже отменили?
13
   Merlin2006
 
10 - 21.02.08 - 16:34
1с++ Это наворот. И он не подойдет по многим причинам.
А можно про "Маска" поподробней?!
13
 
 
   Яндекс
 
11 - 21.02.08 - 16:35
Маска
Установить/определить маску интерактивного ввода для элементов диалога типа «поле ввода».

Синтаксис:
Маска(<СтрокаМаски>)

Англоязычный синоним:

Mask

Параметры:

<СтрокаМаски>
Необязательный параметр. Строковое выражение — посимвольная маска интерактивного ввода для стро­ковых реквизитов диалога (аналогично установке в свойствах реквизита диалога в конфигураторе).


Возвращаемое значение:

Строковое значение — текущая маска интерактивного ввода для строковых реквизитов (на момент до исполнения метода).

Описание:

Метод Маска позволяет установить посимвольную маску интерактивного ввода для элементов диалога типа «поле ввода» (аналогично установке в свой­ствах реквизита диалога в конфигураторе).

В параметре <СтрокаМаски> допустимы следующие символы:

·          ! — введенный символ преобразуется в верхний регистр;

·          9 — произвольный символ цифры;

·          # — произвольный символ цифры или - (знак минус) или + (знак плюс) или пробел;

·          N — любые алфавитно-цифровые символы (буквы или цифры);

·          Х (латинского алфавита) — произвольный символ;

·          @ — любые алфавитно-цифровые символы (буквы или цифры) в верх­нем регистре.

Доступ к данному методу возможен только в контексте Модуля формы.

Пример:

форма.Телефон.Маска("999-99-99");
   Яндекс
 
12 - 21.02.08 - 16:36
Блин я затупил. "Х (латинского алфавита)"
14
18
   Sadovnikov
 
13 - 21.02.08 - 16:36
(9) А подробнее? ЖКК вот что про маску говорит:
! — введенный символ преобразуется в верхний регистр;
9 — произвольный символ цифры;
# — произвольный символ цифры или - (знак минус) или + (знак плюс) или пробел;
N — любые алфавитно-цифровые символы (буквы или цифры);
Х (латинского алфавита) — произвольный символ;
@ — любые алфавитно-цифровые символы (буквы или цифры) в верх­нем регистре.

(10) Пипец... Трахайтесь дальше...
16
   Sadovnikov
 
14 - 21.02.08 - 16:37
(12) Ага! Я не один такой!!! Я тоже на это сначала купился :))
   Merlin2006
 
15 - 21.02.08 - 16:37
Сейчас проверим
   Мулька
 
16 - 21.02.08 - 16:38
(13) Нуралиеву слив. Допустил геноцид русского алфавита (символов). По идейным соображениям надо отказываться от юзания маски
   Merlin2006
 
17 - 21.02.08 - 16:40
Не пойму!
В поле ввода в закладке указываем на Маске=X - англ.
А всё равно можно вводить любые символы
18
   Sadovnikov
 
18 - 21.02.08 - 16:42
(17) Обрати внимание на (12).
   Merlin2006
 
19 - 21.02.08 - 16:42
И что делать?!
20
   Sadovnikov
 
20 - 21.02.08 - 16:44
(19) Даже и не знаю. Наверное, продолжать дальше тихо ненавидеть ВК, которые очень многое умеют...
   Merlin2006
 
21 - 21.02.08 - 16:45
А "ВК" это что?!
22
   Sadovnikov
 
22 - 21.02.08 - 16:46
(21) Внешние компоненты. Например, FormEx и 1С++.
   Merlin2006
 
23 - 21.02.08 - 16:48
Так дело не в том что "ненавижу"
А в том что везде 1с++ не поставишь.
27
   Яндекс
 
24 - 21.02.08 - 16:49
а чем проверка после ввода не устраивает?
   Merlin2006
 
25 - 21.02.08 - 16:49
Как?!
Просто не пойму.
   Яндекс
 
26 - 21.02.08 - 16:51
Ну вешаешь процедуру на поле ввода. Которая проверит если символы в веденой строке или нет.
   Мулька
 
27 - 21.02.08 - 16:52
(23) Че курил ?
   Merlin2006
 
28 - 21.02.08 - 16:52
а как мне сказать, что это именно "англ" символы, а не "рус".
29
30
   Heckfy
 
29 - 21.02.08 - 16:54
(28) Делай таблицу соответствий. Для примера:

Сообщить("Рус. "+КодСимв("а")+"   Англ. "+КодСимв("a"));
   Sadovnikov
 
30 - 21.02.08 - 17:03
(28)
КодСимв(<?>)
Синтаксис:
КодСимв(<Символ>)
Назначение:
Возвращает код первого символа, содержащегося в строке.
Параметры:
<Символ> - строковое выражение.
   Merlin2006
 
31 - 21.02.08 - 17:05
Я понял. А у меня ещё вопрос. А как проще перебрать англ. алфавит. Что бы не писать так
КодСимв("a");
КодСимв("b");
33
   Яндекс
 
32 - 21.02.08 - 17:08
Размер = стрдлина(ТвояСтрока);
для х = 1 по Размер цикл
  Символ = нрег(сред(ТвояСтрока, х, 1));
  если найти("qwertyuiopasdfghjklzxcvbnm", Символ) > 0 тогда
    сообщить("есть английский символ");
  конецесли;
конеццикла;
   Ёпрст2
33 - 21.02.08 - 17:13
(31) Лови:
 
ИсходнаяСтрока = "ВасяSSSSS";
АнглийскаяСтрока = OemToAnsi(ИсходнаяСтрока);

Для к  = 1 По СтрДлина (ИсходнаяСтрока )Цикл
   Если Сред(ИсходнаяСтрока,к,1)<>Сред(АнглийскаяСтрока,к,1) Тогда
     Сообщить("Руская буковка " + Сред(ИсходнаяСтрока,к,1) + " в "+к +" позиции");
   КонецЕсли;
КонецЦикла;
 
 
   Merlin2006
 
34 - 21.02.08 - 17:16
Спасибо. Уже сам написал!
35
   Ёпрст2
35 - 21.02.08 - 17:17
(34) Показывай ...как сделал

 

Список тем форума

 
Оставайтесь голодными, оставайтесь безрассудными. Стив Джобс
Ветка сдана в архив. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.