Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.11.14;
Скачать: CL | DM;

Вниз

Как ограничить ввод в 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;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.046 c
3-1097556402
kalex
2004-10-12 08:46
2004.11.14
Поддерживает ли Delphi базы данных MySQL


6-1094133088
Евгений30048
2004-09-02 17:51
2004.11.14
Как закачать на сервер БИНАРНЫЙ файл по http?


3-1097655754
AlexG
2004-10-13 12:22
2004.11.14
Нужно прервать попытку соединения с БД


1-1099394225
Chlavik
2004-11-02 14:17
2004.11.14
var A:Array [0..0] of DWORD; Как получить A[1]?


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