Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.04.2012, 14:57   #1
Софья1992
Пользователь
 
Регистрация: 09.04.2012
Сообщений: 12
По умолчанию работа Tedit

нужен код,обеспечивающий ввод в Tedit только цифр от 0 до 9.некорректные символы должны отбрасываться без прерывания работы программы.

здесь,так я понимаю,нужен цикл...и вот начала,а закончить не могу


procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
var
i:Integer;
begin
for i:=0 to 9 do

Edit1.Text.Add('IntToStr(r));
end;
но не читает последнюю строчку перед енд
Софья1992 вне форума Ответить с цитированием
Старый 10.04.2012, 15:09   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

загляните в тему string and set
в ней как раз эту проблему и обсуждают...
Serge_Bliznykov вне форума Ответить с цитированием
Старый 10.04.2012, 15:28   #3
Софья1992
Пользователь
 
Регистрация: 09.04.2012
Сообщений: 12
По умолчанию

что то все равно не получается..

procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);

var
i:Integer;

begin
case i of 0..9:;
else Key := Chr(0);

Edit1.Text:=Format('%f',[StrTofloat(Edit1.Text)])
end;

end;
Софья1992 вне форума Ответить с цитированием
Старый 10.04.2012, 17:09   #4
3D Hunter
Сумрачная тень
Форумчанин
 
Аватар для 3D Hunter
 
Регистрация: 05.03.2009
Сообщений: 689
По умолчанию

Какая у вас версия Делфи? Если выше 2009, то в инспекторе объектов у Edit поставьте свойство NumbersOnly в True.
Если же нет, то в обработчик OnKeyPress:
Код:
  if (not (Key in ['0'..'9',#8])) then key:=#0;
P.S. Пожалуйста, оформляйте код соответствующим тегом.
"ковыряю изнутри" (с)

Последний раз редактировалось 3D Hunter; 10.04.2012 в 17:23.
3D Hunter вне форума Ответить с цитированием
Старый 11.04.2012, 03:57   #5
__123
Пользователь
 
Аватар для __123
 
Регистрация: 15.09.2011
Сообщений: 36
По умолчанию

Код:
Try StrToInt(Edit1.Text) except On exception Do 
ShowMessage("isnt number. not good.");
End;
__123 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
TEdit ... Vova777 Общие вопросы Delphi 1 28.06.2011 18:51
TEdit VAN32 Общие вопросы Delphi 4 01.03.2011 16:14
TEdit green Компоненты Delphi 17 16.03.2008 07:13
TEdit, TEdit, TEdit Oleg Romanchuk Помощь студентам 2 20.08.2007 11:30