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


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

Метки: 

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

Я
   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
А это не стандартная функция!?
   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
Не подойдет.
   Sadovnikov
 
8 - 21.02.08 - 16:30
(7) О как! Эт почему? Религия не позволяет?
Или просто не ищем легких путей в жизни?
   Яндекс
 
9 - 21.02.08 - 16:31
(8)О как, а что свойства Маска уже отменили?
   Merlin2006
 
10 - 21.02.08 - 16:34
1с++ Это наворот. И он не подойдет по многим причинам.
А можно про "Маска" поподробней?!
 
 
   Яндекс
 
11 - 21.02.08 - 16:35
Маска
Установить/определить маску интерактивного ввода для элементов диалога типа «поле ввода».

Синтаксис:

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

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

Mask

Параметры:

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


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

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

Описание:

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

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

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

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

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

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

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

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

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

Пример:

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

(10) Пипец... Трахайтесь дальше...
   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 - англ.
А всё равно можно вводить любые символы
   Sadovnikov
 
18 - 21.02.08 - 16:42
(17) Обрати внимание на (12).
   Merlin2006
 
19 - 21.02.08 - 16:42
И что делать?!
   Sadovnikov
 
20 - 21.02.08 - 16:44
(19) Даже и не знаю. Наверное, продолжать дальше тихо ненавидеть ВК, которые очень многое умеют...
   Merlin2006
 
21 - 21.02.08 - 16:45
А "ВК" это что?!
   Sadovnikov
 
22 - 21.02.08 - 16:46
(21) Внешние компоненты. Например, FormEx и 1С++.
   Merlin2006
 
23 - 21.02.08 - 16:48
Так дело не в том что "ненавижу"
А в том что везде 1с++ не поставишь.
   Яндекс
 
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
а как мне сказать, что это именно "англ" символы, а не "рус".
   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");
   Яндекс
 
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
Спасибо. Уже сам написал!
   Ёпрст2
35 - 21.02.08 - 17:17
(34) Показывай ...как сделал



Список тем форума
Рекламное место пустует   Рекламное место пустует
Здесь можно обсудить любую тему при этом оставаясь на форуме для 1Сников, который нужен для работы. Ymryn
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Ветка сдана в архив. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует