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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 29.02.2012, 07:06   #1
SonicBob
Форумчанин
 
Регистрация: 30.05.2011
Сообщений: 133
По умолчанию try в delphi

пытаюсь понять принцип работы с функцие try
рандомно загоняю в эдит числа и символы, хочу сделать что б через трай отфильтровывались буквы а проходили дальше только числа
делаю так примерно
Код:
//тут ввод рандома
Try
  strtofloat(edit3.Text);
  except
    On E :  Exception do
    edit3.Text:=''
    Else
hoh:=strtofloat(edit3.Text );
но ничего не работает не пропускается вообще ничего, в чем я не прав?




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

Последний раз редактировалось SonicBob; 29.02.2012 в 07:18.
SonicBob вне форума Ответить с цитированием
Старый 29.02.2012, 07:35   #2
Вадим Мошев

Старожил
 
Аватар для Вадим Мошев
 
Регистрация: 12.11.2010
Сообщений: 8,568
По умолчанию

1. Надо запускать не через Run (F9), а скомпилированный экзешник.

Код:
//тут ввод рандома
Try
  strtofloat(edit3.Text);
  except
    On E :  Exception do
    edit3.Text:=''
    Else
hoh:=strtofloat(edit3.Text );
Хм, странно, что это вообще компилируется (сам не пробовал, с ваших слов).

Синтаксис Try таков
Код:
Try
// Здесь пытаемся что-то делать
Except
// Сюда мы попадём только в том случае, если возникло исключение
либо так:
Код:
Try
// Здесь пытаемся что-то делать
finally
// Если возникло исключение, то просто игнорируем его и переходим сюда

Последний раз редактировалось Вадим Мошев; 29.02.2012 в 07:39.
Вадим Мошев вне форума Ответить с цитированием
Старый 29.02.2012, 07:41   #3
Nemez
Пользователь
 
Аватар для Nemez
 
Регистрация: 11.02.2008
Сообщений: 69
По умолчанию

Код:
try
hoh:=strtofloat(znakrandom);
edit3.Text:=floattostr(hoh);//если число то пишем в эдит
except
edit3.Text:='';//если текст то очищаем эдит
end;
Nemez вне форума Ответить с цитированием
Старый 29.02.2012, 07:57   #4
SonicBob
Форумчанин
 
Регистрация: 30.05.2011
Сообщений: 133
По умолчанию

спасибо всем понял как работать с этой функцией )
SonicBob вне форума Ответить с цитированием
Старый 29.02.2012, 08:53   #5
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

Вадим Мошев, все правильно там, спецификация исключения, правда ветка else не имеет смысла.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Не изменяется интерфейс моей программы при переходе с Delphi 7 на Delphi 2010 Elvisnya Общие вопросы Delphi 3 28.04.2011 15:59
На Delphi 7 сделать игру кто хочет стать миллионером в delphi 7 666dart666 Помощь студентам 11 04.11.2010 17:57
Rad Studio 2011 XE: новое в Delphi, C++ Builder, RadPHP и Delphi Prism savva-paladin Софт 18 02.10.2010 20:24
Delphi. Как нарисовать в Delphi два движущиеся шара с определенной скоростью? redred Общие вопросы Delphi 10 11.12.2007 10:43
Как открыть БД, написанную в Delphi если нf другой машине Delphi нет? dagarik БД в Delphi 7 22.10.2007 17:54