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

Вниз

numedit   Найти похожие ветки 

 
CAHbKA   (2003-05-25 06:44) [0]

Нужен нормальный компонент для ввода только чисел с исходником в *.pas или корректное описание всех процедур.
Требования:
1. Только цифры.
2. В качестве разделителя целой и дробной части числа можно использовать как "," , так и "." .
2. Поддержка буфера обмена по Ctrl+C, Ctrl+X, Ctrl+V, а так же Ctrl+A .
Вот и всё:)

Первые два получаются ЛеХко! А вот из-за отключенных букв... :(
Можно ли еще обойтись без хука, определить одновременное нажатие, например, Ctrl+A? Просто "A" исключить просто, а вот с Ctrl не получается:(


 
Юрий Зотов ©   (2003-05-25 07:20) [1]

Обычный Edit с замещенными KeyDown и обработчиками WM_COPY, WM_CUT, WM_PASTE и EM_SETSEL (проверка на число и откат, если не число). При обработке "А" проверяйте ShiftState, вот и все.


 
CAHbKA   (2003-05-25 07:54) [2]

Спасибо Юрий, ждал ответ именно от Вас... попробую...


 
Юрий Зотов ©   (2003-05-25 08:12) [3]

Поправка - WM_COPY и WM_CUT, конечно, трогать не нужно.


 
AbrosimovA   (2003-05-28 12:32) [4]

Если ты в событие OnKeyPress для Edit вставишь следующую строку, то тебе не придется искать другой компонент.

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

Т.е. разрешается вводить только цифры и десятичную точку(запятую), в ином случае в Edit изменений происходить не будет.


 
Danilka ©   (2003-05-28 12:45) [5]

AbrosimovA (28.05.03 12:32)
за исключением вставки из буфера обмена и нескольких DecimalSeparator.

но все можно легко обойти, не пойму, в чем проблема...



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

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

Наверх




Память: 0.47 MB
Время: 0.014 c
1-34849
KpeHgeJIb
2003-05-30 16:48
2003.06.12
Работа с риестром


1-34828
DeMoN_Astra
2003-05-31 17:33
2003.06.12
шедулер


14-35067
Дмитрий К.К.
2003-05-28 07:22
2003.06.12
Именинники 28 мая


4-35113
raven2003
2003-04-13 21:58
2003.06.12
Как получить дату последнего открытия и измененрия файла!?!


14-34975
Ork
2003-05-28 19:31
2003.06.12
doc files компоненты