Экспертная система Delphi.int.ru

Сообщество программистов
Общение, помощь, обмен опытом

Логин:
Пароль:
Регистрация | Забыли пароль?

Delphi.int.ru Expert

Другие разделы портала

Переход к вопросу:

#   

Статистика за сегодня:  


Лучшие эксперты

Подробнее »



Вопрос # 4 406

/ вопрос открыт /

Здравствуйте, эксперты!
есть ли функция (процедура), кот проверят к какому типу относится переменная?
напр.: if (a: real) then messageDlg(); - как записать правильно условие в скобках?

габибыч Вопрос ожидает решения (принимаются ответы, доступен мини-форум)

Вопрос задал: габибыч (статус: Заблокирован)
Вопрос отправлен: 10 июля 2010, 01:45
Состояние вопроса: открыт, ответов: 0.


Мини-форум вопроса

Всего сообщений: 21; последнее сообщение — 10 июля 2010, 17:41; участников в обсуждении: 3.

Страницы: [1] [2] [Следующая »]

Ерёмин А.А.

Ерёмин А.А. (статус: *Администратор), 10 июля 2010, 09:01 [#1]:

В интерпретируемых языках могу такое представить, а в компилируемом-то это зачем? Тут же все переменные объявляются заранее.
P.S. Можно тип Variant использовать.
min@y™

min@y™ (статус: Доктор наук), 10 июля 2010, 09:48 [#2]:

Цитата (Ерёмин А.А.):

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

Андрюх, габибыч - это аццкий экспериментатор. Благодаря этому алхимику мы узнали, что процедура Inc() может принимать вещественные аргументы! Пусть дальше ставит опыты, может быть ещё что-нибудь накопает! :)
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
min@y™

min@y™ (статус: Доктор наук), 10 июля 2010, 09:51 [#3]:

Цитата (габибыч):

есть ли функция (процедура), кот проверят к какому типу относится переменная? напр.: if (a: real) then messageDlg();

Для простых переменных такой фишки нет, есть только для экземпляров классов - оператор "is".
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
габибыч

габибыч (статус: Заблокирован), 10 июля 2010, 12:57 [#4]:

здарова! вот это жара, обос-ся - не жить!

min@y™ век живи, век учись)
тогда как сделать чтобы в Edit мона было заносить целые числа? щас когда я заношу туда вещ число, комп выдает ошибку, а мне надо, чтобы он выводил сообщение, мол сюда вводи только целые
min@y™

min@y™ (статус: Доктор наук), 10 июля 2010, 13:08 [#5]:

Цитата (габибыч):

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

Воспользуйся функцией TryStrToInt().
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
габибыч

габибыч (статус: Заблокирован), 10 июля 2010, 13:18 [#6]:

еще одна вешь.
щас считывание у меня начинается с нажатия кнопки.
надо еще чтобы при нажатии Enter она работала. как это сделать?
min@y™

min@y™ (статус: Доктор наук), 10 июля 2010, 13:29 [#7]:

Цитата (габибыч):

надо еще чтобы при нажатии Enter она работала. как это сделать?

Есть событие TEdit.OnKeyPress. Код клавиши Enter = #13.
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
габибыч

габибыч (статус: Заблокирован), 10 июля 2010, 13:33 [#8]:

атлична, попробуем.
габибыч

габибыч (статус: Заблокирован), 10 июля 2010, 14:27 [#9]:

да да yesss.
min@y™ , только не TEdit.OnKeyPress., а TEdit.OnKeyDown.
и нажатие Enter сопровождается Виндовским звуком. нельзя ли его как нить приглушить?
габибыч

габибыч (статус: Заблокирован), 10 июля 2010, 14:31 [#10]:

> Воспользуйся функцией TryStrToInt().

не могу понять чо то, в коде как условие задать с помощью нее?
min@y™

min@y™ (статус: Доктор наук), 10 июля 2010, 14:35 [#11]:

Цитата (габибыч):

только не TEdit.OnKeyPress., а TEdit.OnKeyDown.

Даааааааааааааа? С каких это пор у TEdit отсутствует событие OnKeyPress?

Цитата (габибыч):

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

if TryStrToInt(<параметры>)
  then // введено правильно
  else // введено неправильно
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
габибыч

габибыч (статус: Заблокирован), 10 июля 2010, 14:48 [#12]:

событие есть, но чо то не работало...
габибыч

габибыч (статус: Заблокирован), 10 июля 2010, 14:51 [#13]:

var a: integer;
...................
if trystrtoint(a) = false then
messagedlg('введите целое число', mtwarning, [mbOk], 0);

Edit в данном случае вводятся только целые числа, при вводе вещ. - ошибка.
задача: заменить ощибку сообщением.
габибыч

габибыч (статус: Заблокирован), 10 июля 2010, 14:56 [#14]:

кстати, чем отлич. OnKeyPress от OnKeyDown?
и в том и вдругом случае давишь на кнопку)
габибыч

габибыч (статус: Заблокирован), 10 июля 2010, 15:11 [#15]:

ура! гитлер, еб его в сра.., капут)
min@y™

min@y™ (статус: Доктор наук), 10 июля 2010, 15:12 [#16]:

Цитата (габибыч):

задача: заменить ощибку сообщением.

оЩибка у тебя в коде. У функции TryStrToInt() 2 параметра.

Цитата (габибыч):

кстати, чем отлич. OnKeyPress от OnKeyDown? и в том и вдругом случае давишь на кнопку)

Ну почитай ты хэлп, неужели так сложно? Или мне его сюда процитировать?
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
габибыч

габибыч (статус: Заблокирован), 10 июля 2010, 15:15 [#17]:

хелп на инглише, и там всо офицялно написано...
min@y™

min@y™ (статус: Доктор наук), 10 июля 2010, 15:30 [#18]:

Цитата (габибыч):

хелп на инглише, и там всо офицялно написано...

Ну и что? Есть полно книжек на русском языке, большинство из них можно нахаляву слить из интернета.
А вообще, IMHO, без знания английского языка заниматься программированием очень сложно.
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
габибыч

габибыч (статус: Заблокирован), 10 июля 2010, 15:34 [#19]:

англ так се знаю, но чтобы суть понять .... это долго.
лучше спросить, что я и делаю)
габибыч

габибыч (статус: Заблокирован), 10 июля 2010, 15:36 [#20]:

ты как знающий чел можешь написать:
onkeypress - .......
onkeydown - ........
на разговорном языке, и все хелп пускай сами чиают)

Страницы: [1] [2] [Следующая »]

Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.

Версия движка: 2.6+ (26.01.2011)
Текущее время: 22 февраля 2025, 11:29
Выполнено за 0.03 сек.