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

Вниз

Как ограничить ввод в TEdit.   Найти похожие ветки 

 
Arnold ©   (2004-10-31 11:34) [0]

Вводить можно только цифры


 
Gero ©   (2004-10-31 11:40) [1]

SetWindowLong(Edit.Handle, GWL_STYLE, GetWindowLong(Edit.Handle, GWL_STYLE) or ES_NUMBER);

(c) DMClient team


 
Arnold ©   (2004-10-31 12:05) [2]

Хотелось бы чтобы еще и вещественные и со знаком можно было.
Таким образом минусы и запятые тоже не хочет печатать


 
Gero ©   (2004-10-31 12:11) [3]


> Хотелось бы чтобы еще и вещественные и со знаком можно было

А что, существуют вещественные цифры или цифры со знаком?

> Таким образом минусы и запятые тоже не хочет печатать

Это тоже цифры?


 
Anatoly Podgoretsky ©   (2004-10-31 12:15) [4]

Arnold ©   (31.10.04 12:05) [2]
А это уже противоречит первичному вопросу, ты в следующий раз не торопись задавать вопрос, а сначала сформулируй его и подумай раз два три перед отправкой в форум.

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


 
SpyBack   (2004-11-01 00:31) [5]

Вот так можно запретить ввод букв, но по аналогии можно и цифр:
кидай на форму ApplicationEvents и 1 edit

на событие onmessage ApplicationEvents пиши:

Handled:=edit1.Focused and (msg.message = wm_Char) and (msg.wParam>=48) and(Msg.wParam<=57)


 
eRoR_rrr   (2004-11-01 04:21) [6]

Только цифры, пробел и BackSpace.
Событие OnKeyPress:
if not (Key in ["0".."9"," ",#8]) then
 begin
   Key:=#0;
 end;


 
ghg ©   (2004-11-01 08:53) [7]

было в кладовке здесь, щас на закрыто, но у меня сохранился юнит с подобным едитом
если надо, то пиши


 
PVOzerski ©   (2004-11-01 09:25) [8]

Только пиши обработчик осторожно: юзер может набрать и вот такое:

1--3+5..ee.10

А если проверять "численность" текста при вводе каждого символа, может получиться неудобство при редактировании. К примеру, хочет юзер ввести отрицательное число, ввел минус - а обработчик "голый минус" числом считать не хочет. Или набрал юзер -4, решил исправить на -5, стер четверку - и опять обработчик недоволен. Я пришел в итоге вот к чему: если речь идет об Edit и т.п. в диалоге не надо пользователю препятствовать вводить что угодно. Но вот при нажатии кнопочки OK, "Применить" и. т. п. делать проверку (например, c помощью StrToFloat).


 
begin...end ©   (2004-11-01 12:49) [9]


> [2] Arnold ©   (31.10.04 12:05)

По событию TEdit.OnChange проверяете текст в цикле по символам на наличие недопустимых символов; если они там есть, то заменяете TEdit.Text на новое значение с помощью StringReplace().



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

Форум: "Основная";
Текущий архив: 2004.11.14;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.059 c
1-1098887948
Koala
2004-10-27 18:39
2004.11.14
панель задач и формы в Dll


14-1098809764
Piter
2004-10-26 20:56
2004.11.14
Как связаться с администрацией?


1-1099393717
Pentium133
2004-11-02 14:08
2004.11.14
Не вызывается Change! Что делать?


1-1099061901
ser_ega
2004-10-29 18:58
2004.11.14
Разрешение экрана и моя прога


1-1099029748
dms_main
2004-10-29 10:02
2004.11.14
Dll и TThread





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский