Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2013.03.22;
Скачать: [xml.tar.bz2];

Вниз

Информировать, какие символы разрешено вводить   Найти похожие ветки 

 
Grimm375   (2012-10-19 14:46) [0]

Нужно контролировать вводимые пользователем данные. Если неверные - как-то информировать его об этом. Как с точки зрения дизайна лучше сделать:

1. Рядом с полем положить label который будет отображать информацию, какие символы допустимо вводить (как при регистрации на различных сайтах).

2. Когда в поле устанавливается фокус выводить всплывающую подсказк с информацией, какие символы допустимо вводить.

3. При вводе, если вводится недопустимый символ - выводить всплывающую подсказку, что-то типа: введен недопустимый символ ... Разрешается вводить ...

4. Другой вариант.


 
Dimka Maslov ©   (2012-10-19 15:00) [1]

Дать пользователю нормально ввести данные, а перед их передачей далее - отругать если введено неправильно. Любые извраты при вводе - жутко бесят.


 
kilkennycat ©   (2012-10-19 15:18) [2]

просто запретить ввод


 
AV ©   (2012-10-19 15:20) [3]

а мне понравилось..

> Дать пользователю нормально ввести данные

да пусть вводит, что угодно
А хинт пусть маячит - "перед окончательным вводом не забудьте исправить символы XX YY"


> kilkennycat ©   (19.10.12 15:18) [2]
> просто запретить ввод

а вот это -  нет


 
Inovet ©   (2012-10-19 15:21) [4]

Подчеркнуть красным


 
Коллект   (2012-10-19 15:25) [5]

При вводе, если вводится недопустимый символ - выводить с некоторой задержкой ненавязчивую всплывающую подсказку, что-то типа: "Разрешается вводить бла-бла-бла".
Задержку вывода подсказки чтобы пользователь мог регулировать сам.
И мог сам полностью отключать эту функцию.
Можно даже кнопку с пиктограмкой настроек сделать в самой подсказке, чтобы "не отходя от кассы".


 
Игорь Шевченко ©   (2012-10-19 15:27) [6]

просто запретить ввод

побибикать


 
Pavia ©   (2012-10-19 15:28) [7]

Нкто ваш билбор читат не будет. Лучше всего запретить лшний ввод. или выделить красным.


 
Коллект   (2012-10-19 15:28) [8]


> Подчеркнуть красным


Тогда нужен еще хинт при наведении текста, подчеркнутого красным, что-то типа "Недопустимый символ, разврешается только вот такое и только вот так".
Но подчеркивание красным - это уже вмешательство в логику работы текстового поля ввода, а это далеко не самая простая задача.


 
AV ©   (2012-10-19 15:32) [9]


> Подчеркнуть красным

еще больше нравится


> побибикать

нет, потому что многие без звука сидят
а некоторые и спикер выдрали :)

Если как альтернативу,  в настройках
Тогда и хинт тут же, в настройках


 
AV ©   (2012-10-19 15:37) [10]

а насчет

> запретить ввод

вот это последнее дело.

Жмешь, а ничего не происходит. Закрадывается мысль, что клава отошла или прога зависла.
Да и отловить надо много чего, от нажатия кнопок, до WM_SETTEXT


 
Dimka Maslov ©   (2012-10-19 15:59) [11]


> Да и отловить надо много чего, от нажатия кнопок, до WM_SETTEXT


Именно поэтому надо делать как в [1] и не париться.


 
Inovet ©   (2012-10-19 16:24) [12]

> [6] Игорь Шевченко ©   (19.10.12 15:27)
> побибикать

А если пользователь с ограниченными слуховыми возможностями.


 
Inovet ©   (2012-10-19 16:25) [13]

> [8] Коллект   (19.10.12 15:28)
> Но подчеркивание красным - это уже вмешательство в логику
> работы текстового поля ввода, а это далеко не самая простая
> задача.

Целиком подчёркивать.


 
Inovet ©   (2012-10-19 16:26) [14]

> [11] Dimka Maslov ©   (19.10.12 15:59)
> Именно поэтому надо делать как в [1] и не париться.

Ну так это сомо собой.


 
palva ©   (2012-10-19 16:26) [15]

Пусть запрещенный символ появляется и через секунду исчезает и курсор возвращается на прежнее место. Параллельно идет звуковой сигнал.


 
Inovet ©   (2012-10-19 16:28) [16]

> [15] palva ©   (19.10.12 16:26)

Нельзя так. Это плохо воспринимается.


 
Студент   (2012-10-19 16:33) [17]

procedure TForm1.OnKeyPressed(непомню);
begin
if Key = 27 then //esc
  begin
    Label1.Caption := "Вы нажали Esc пожалуйста не делайте так";
    key := 0;
  end;
end;


 
TUser ©   (2012-10-19 16:37) [18]

играть звук вувузелы, потому что далеко не все вслепую печатают и смотрят на твои лейблы

и модальное окошко - это для глухих


 
Студент   (2012-10-19 16:44) [19]

Игорь Шевченко ©   (19.10.12 15:27) [6]
Вырываю спикеры везде где встречу, никак не могу найти где его вырвать в Lenovo g560.


 
Андреевич   (2012-10-19 16:47) [20]


> 3. При вводе, если вводится недопустимый символ - выводить
> всплывающую подсказку, что-то типа: введен недопустимый
> символ ... Разрешается вводить ...

так и делать.
не давать вводить все что угодно, сразу показывать то, что будет отправлено, аналогично переименованию файла в проводнике. Нет ничего дурнее чем позволить юзеру ввести всю информацию, и на финальном этапе сообщить что где-то введен некорректный символ, и чтобы он его искал и выковыривал.


 
Студент   (2012-10-19 16:50) [21]

Андреевич   (19.10.12 16:47) [20]
ИМХО
Формы ввода при регистрации, все ввел потом списком что ввел неправильно и почему. Люди уже к этому привыкли, поля не очищать, вот это бесит.
ИМХО


 
Андреевич   (2012-10-19 16:54) [22]


> Формы ввода при регистрации, все ввел потом списком что
> ввел неправильно и почему

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


 
Игорь Шевченко ©   (2012-10-19 16:59) [23]


> аналогично переименованию файла в проводнике


Кстати, да, хорошее решение


 
brother ©   (2012-10-19 17:06) [24]

я тож хотел сказать, про продукты MS что-то не вспоминали долго, хотя там это все кравиво реализовано...


 
brother ©   (2012-10-19 17:07) [25]

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


 
Inovet ©   (2012-10-19 17:12) [26]

> [19] Студент   (19.10.12 16:44)
> Вырываю спикеры везде где встречу

Маньяк?


 
Студент   (2012-10-19 17:16) [27]

Inovet ©   (19.10.12 17:12) [26]
Просто задолбала пищалка на лине.


 
Студент   (2012-10-19 17:19) [28]

Андреевич   (19.10.12 16:54) [22]
ИМХО
Я про расширенную и излишнюю информацию почему так нельзя, она должна быть. Причем на языке пользователя. Запретить не проблема, просто не пускать символы на ввод, как я писал выше.
ИМХО


 
Inovet ©   (2012-10-19 17:26) [29]

Запрещать - плохой метод.


 
Студент   (2012-10-19 17:28) [30]

Inovet ©   (19.10.12 17:26) [29]
Иногда вынужденная, но надо полную информацию, почему это происходит.


 
Андреевич   (2012-10-19 18:34) [31]


> Студент   (19.10.12 17:19) [28]

ну так я ж сказал про то, чтобы хинтом показывать, как при переименовании файла в проводнике, он выдает хинт о том какие символы нельзя вводить и не дает ввести некорректный символ


 
Anatoly Podgoretsky ©   (2012-10-19 19:09) [32]

> Grimm375  (19.10.2012 14:46:00)  [0]

В Виндоус принять пикать и +3


 
kilkennycat ©   (2012-10-20 15:13) [33]

Компоненты с маской запрещают ввод недопустимых символов, и что-то никто не бежит сразу в магазин покупать новый комп. перед вводом какой либо информации обычно пишут, что там вводить. И если в почтовый индекс РФ пытаются ввести буквы, а они не вводятся, и начинают паниковать, то на это можно привести где-то давно мною прочитанное:
Напишите программу, которой может воспользоваться даже дурак, и только дурак и захочет ею воспользоваться


 
Inovet ©   (2012-10-20 15:58) [34]

> [33] kilkennycat ©   (20.10.12 15:13)

Не, запрещять не втихую, а с биком и всплывающей подсказкой - нормально. И всё равно по ситуации надо смотреть, как оно лучше. Одно дело в числовое поле вводить буквы, другое в символьном недопустимые сочетания.


 
MonoLife ©   (2012-10-20 17:17) [35]


> Запрещать - плохой метод.

а че такого? Эдит, над ним кэпшн: введите 5 цифр. Эдит реагирует только на ввод чисел..


 
Inovet ©   (2012-10-20 17:32) [36]

> [35] MonoLife ©   (20.10.12 17:17)

Мимо цифры нажал, уверен, что ввёл, а на самом деле нет. Получится вместо 1928374 рублей 192374. и не заметишь сразу, если после ошибки не будет висеть предупреждение и не бикнет. С тем же упехом может получиться и 19283974, ещё больше не заметишь, но всё-таи.


 
Дмитрий С ©   (2012-10-20 17:36) [37]

лучше при вводе недопустимого символа просто очищать форму и все)


 
Inovet ©   (2012-10-20 17:39) [38]

> [37] Дмитрий С ©   (20.10.12 17:36)

Ага, и закрывать программу, а для надёжности отключать комп во избежание подрыва.:)


 
MonoLife ©   (2012-10-20 17:40) [39]


> Получится вместо 1928374 рублей 192374.


> над ним кэпшн: введите 5 цифр


 
Inovet ©   (2012-10-20 17:45) [40]

> [39] MonoLife ©   (20.10.12 17:40)

Хорошо, если их всегда 5 или 6, как почовом индексе, или 20, как в номере банковского счёта. Хорошо, когда во вводимом есть контрольная сумма.



Страницы: 1 2 вся ветка

Форум: "Прочее";
Текущий архив: 2013.03.22;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.54 MB
Время: 0.075 c
2-1337757483
serge
2012-05-23 11:18
2013.03.22
нужна помощь с событием onkeydown


15-1340137805
Юрий
2012-06-20 00:30
2013.03.22
С днем рождения ! 20 июня 2012 среда


15-1344801222
Jeer
2012-08-12 23:53
2013.03.22
Как молоды мы были...


15-1329337802
Юрий
2012-02-16 00:30
2013.03.22
С днем рождения ! 16 февраля 2012 четверг


15-1333088061
macrodens
2012-03-30 10:14
2013.03.22
Outlook 2007





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский