Как заставить "нормально" работать TEdit и TDBEdit при вводе чисел с фиксир. точкой?!
Подскажите дебютанту, можно ли объявить переменную типа double (или float), записать в нее значение из БД (но не через TTable; пользуюсь только TIBQuery) и выдать пользователю через компонент TEdit для редактирования, но в "нормальном" шаблоне (что-то типа '99999.9999' на языке xBase), который правильно будет реагировать на ввод десятичной ТОЧКИ и сдвигать к этой точке введенную целую часть числа?
А то впечатление такое, что TEdit "не понимает", что я ввожу число с плавающей точкой...
Спасибо всем, кто ответит.
Цитата:
Originally posted by p519446
Доброго всем <GMT>!
Подскажите дебютанту, можно ли объявить переменную типа double (или float), записать в нее значение из БД (но не через TTable; пользуюсь только TIBQuery) и выдать пользователю через компонент TEdit для редактирования, но в "нормальном" шаблоне (что-то типа '99999.9999' на языке xBase), который правильно будет реагировать на ввод десятичной ТОЧКИ и сдвигать к этой точке введенную целую часть числа?
А то впечатление такое, что TEdit "не понимает", что я ввожу число с плавающей точкой...
Спасибо всем, кто ответит.
Доброго всем <GMT>!
Подскажите дебютанту, можно ли объявить переменную типа double (или float), записать в нее значение из БД (но не через TTable; пользуюсь только TIBQuery) и выдать пользователю через компонент TEdit для редактирования, но в "нормальном" шаблоне (что-то типа '99999.9999' на языке xBase), который правильно будет реагировать на ввод десятичной ТОЧКИ и сдвигать к этой точке введенную целую часть числа?
А то впечатление такое, что TEdit "не понимает", что я ввожу число с плавающей точкой...
Спасибо всем, кто ответит.
Всё он понимает
Воспользуйся функциями StrToFloat и FloatToStr;
StrToFloat(Edit1->Text) - если в Edit1 написать 4е6 прога прекрасно поймёт, что это число 4000000.
Дык это понятно, что ПОСЛЕ ввода цифр в поле можно преобразовывать. Однако я меня при объявлении TMaskEdit, задании ему шаблона вида '#####0.#####' и попытке ввода туда числа 31.86 результат будет примерно таким (ПОСЛЕ выхода из режима ввода!):
31___.86__
(т.е. с виду кажется, что там остается СТРОКА!)Компонент TMaskEdit при вводе символа "." НЕ передвигает левую часть к точке (как хотелось бы).