Ввод цифровых данных в форму |
GBey | Дата: Понедельник, 07.06.2010, 00:21 | Сообщение # 1 |
Ранг 1
Группа: Пользователи
Сообщений: 3
Награды: 0
Репутация: 0
Статус: Offline
| Sorry за идиётский вопрос, но по-жизни сталкиваюсь не в первый раз : Нужно в книге БЫСТРО найти подсказку, совершенно простую, настолько простую, что хрен найдешь! С Паскалем знаком еще ДО Турбо-версии... Программирую на сильно любительском уровне, т.е. ОСНОВ не надо, СУПЕР не надо, а надо : (Для начала) Ввести в Форму поле (ХЗ КАКОЕ!!!), кнопку (нет проблем), потом в работе введя цифровое (десятичное) значение в поле и кликнув кнопку, получить в модуль введенное значение, обработать и вывести в это же поле . Третий день набегом пытаюсь выудить эту информацию из "Delphi7 в подлиннике" и "Программирование в среде Delphi"
|
|
| |
|
skycar | Дата: Понедельник, 07.06.2010, 00:38 | Сообщение # 2 |
Ранг 6
Группа: Проверенные
Сообщений: 116
Награды: 5
Репутация: 31
Статус: Offline
| Вероятно, имелось ввиду поле TEdit. Идём на вкладку Standart (которая по дефолту первая и открытая), на форму кидаем Edit1 и Button1 (всё это есть на этой вкладке). Далее: пишем код нажатия (двойной клик по кнопке) Code procedure TForm1.Button1Click(Sender: TObject); var M, T: Integer; begin T:=StrToInt(Edit1.Text); M:=Abs(T); Edit1.Text:=IntToStr(M); end; В поле появится значение модуля числа, которое было туда же введено.
|
|
| |
|
GBey | Дата: Понедельник, 07.06.2010, 15:33 | Сообщение # 3 |
Ранг 1
Группа: Пользователи
Сообщений: 3
Награды: 0
Репутация: 0
Статус: Offline
| Спасибо skycar ! Я уж приготовился вычитывать тонны умничанья, а тут коротко и по делу ! В принципе уже нашел аналогичное решение через StrToFloat - расчеты нужны для чисел с точкой, однако подстерегла "засада" - при вводе целого числа все хорошо, а ввод типа 21.12 (с точкой) "не кушает". Пока не разобрался, если подскажите "где собаке порыться" - буду признателен.
|
|
| |
|
DJ_Евс | Дата: Понедельник, 07.06.2010, 17:06 | Сообщение # 4 |
Ранг 6
Группа: Проверенные
Сообщений: 165
Награды: 3
Репутация: 1
Статус: Offline
| GBey, там странная система. Не знаю, почему так в делфях сделано, но FLoat кушается там то с точкой, то с запятой. Где как! Экспериментируй. Оно то так, то так. В коде, например, с точкой надо писать, а в TEdit, если его оттуда читать, то надо с запятой. Делфи такой делфи....
ПРОЙДИ ТЕСТ!!!!! http://FIDO20.ru/test.php?4052&c=bbea2a1
Сообщение отредактировал DJ_Евс - Понедельник, 07.06.2010, 17:06 |
|
| |
|
skycar | Дата: Понедельник, 07.06.2010, 21:11 | Сообщение # 5 |
Ранг 6
Группа: Проверенные
Сообщений: 116
Награды: 5
Репутация: 31
Статус: Offline
| Если константа - десятичная дробь, да и просто если прям в коде надо написать дробь, то пишется через точку (поскольку в синтаксисе делфи запятая служит для перечислений параметров и т. д). Если же преобразовывать строку в десятичную дробь через StrToFloat(), то надо писать с запятой Code var K: Real; ... K:=StrToFloat('25,3'); Если значение во втором случае берётся из поля, там также надо писать дробь с запятой
Сообщение отредактировал skycar - Понедельник, 07.06.2010, 21:27 |
|
| |
|
GBey | Дата: Понедельник, 07.06.2010, 21:34 | Сообщение # 6 |
Ранг 1
Группа: Пользователи
Сообщений: 3
Награды: 0
Репутация: 0
Статус: Offline
| Всем спасибо! С запятой работает. теперь буду кропать программку для приближенного анализа процессов в воздушке-переломке (пружинная) и разгона пульки в пневматике с предварительной накачкой. Как "пневманулся" пол-года назад, так и забросил микропроцессоры и аналоговую электронику (благо деньги платЮть не это), теперь вот захотелось обсчитать некоторые вопросы, обросшие легендами среди необразованных
|
|
| |
|