Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.10.16;
Скачать: CL | DM;

Вниз

Как в Edit вводить только цифры?   Найти похожие ветки 

 
BaxTMaH ©   (2005-09-27 12:24) [0]

Задача написать калькулятор. Что лучше всего использовать для ввода цифр? Компонент Edit? И как ввести дробные числа туда? Если использовать Edit, то дробные числа надо переводить в string, а какой функцией это делается?


 
Rentgen ©   (2005-09-27 12:37) [1]

if not(Key in ["0".."9"] + ["."]) then Key:=#0


 
Rentgen ©   (2005-09-27 12:38) [2]

StrToFloat
FloatToStr


 
Slider007 ©   (2005-09-27 12:42) [3]

Rentgen ©   (27.09.05 12:37) [1]

лучше так :
edit1.ReadOnly := not (key in ["0".."9", ",", #8]);


 
Slider007 ©   (2005-09-27 12:51) [4]

или так
edit1.ReadOnly := not (key in ["0".."9", DecimalSeparator, #8]);


 
stone ©   (2005-09-27 12:51) [5]


> Slider007 ©   (27.09.05 12:42) [3]
> Rentgen ©   (27.09.05 12:37) [1]
>
> лучше так :
> edit1.ReadOnly := not (key in ["0".."9", ",", #8]);

А если разделитель не запятая?


 
BaxTMaH ©   (2005-09-27 13:11) [6]

Ого, сколько ответов! -)) Спасибо! Только вопрос, а что значит #8,#0??


 
BaxTMaH ©   (2005-09-27 13:21) [7]

И еще, я скопировал строку edit1.ReadOnly := not (key in ["0".."9", DecimalSeparator, #8]); и вставил ее в обработчик нажания клавиши, но мне выдается что key - необъявленная переменная, надо что то подключить?


 
IceBeerg ©   (2005-09-27 13:28) [8]

BaxTMaH ©   (27.09.05 13:11) [6]
#8 - помоему backspace, #0 - ну незнаю, символ такой, помоему нихрена означает, нормального названия непомню...
Да, и можно обрабатывать стрелики и delete, для редактирования вводимого числа


 
BaxTMaH ©   (2005-09-27 13:30) [9]

хмм, так куда надо вставлять строку edit1.ReadOnly := not (key in ["0".."9", DecimalSeparator, #8]); , я вставляю ее в событие формы кейдаун, и мне выдается что несоответствие типов ворд и чар


 
IceBeerg ©   (2005-09-27 13:30) [10]

BaxTMaH ©   (27.09.05 13:21) [7]
А мне пришлось строку в Edit1KeyDown доплнить... edit1.ReadOnly := not (Chr(key) in ["0".."9", DecimalSeparator, #8]);


 
BaxTMaH ©   (2005-09-27 13:34) [11]

Во, с твоим дополнением уже заработало! Спасибо!
У меня при вычитании все равно остается минус -) даже если первое число больше второго, почему?


 
BaxTMaH ©   (2005-09-27 13:44) [12]

Во я даюююю..... -))) вот я ламер то -))
На предыдущий вопрос мона не отвечать -)


 
IceBeerg ©   (2005-09-27 13:52) [13]

BaxTMaH ©   (27.09.05 13:34) [11]
ахез, забей, просто умнож на -1


 
IceBeerg ©   (2005-09-27 13:52) [14]

BaxTMaH ©   (27.09.05 13:44) [12]
А че было то? Интересна...


 
BaxTMaH ©   (2005-09-27 13:55) [15]

Это было ламерство -))
Написал что надо отнимать из последней введенной цифры предыдущую, а не наоборот. Ну я просто скопировал строку из "плюса и умножение", а там то пофиг что на что умножать -))



Страницы: 1 вся ветка

Текущий архив: 2005.10.16;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.028 c
1-1127841664
serg128
2005-09-27 21:21
2005.10.16
Как програмно получить доступ к 15 последним открытым документам


14-1127394578
GuAV
2005-09-22 17:09
2005.10.16
Вопрос про синтаксис :-)


14-1127629925
Lamer@fools.ua
2005-09-25 10:32
2005.10.16
Дожился


2-1125919611
JTAG
2005-09-05 15:26
2005.10.16
Помогите кто работал с функцией ShellExecute


2-1126957033
AlexLines
2005-09-17 15:37
2005.10.16
Относительные пути и win98





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский