Форум: "Потрепаться";
Текущий архив: 2003.06.12;
Скачать: [xml.tar.bz2];
Вниз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;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.007 c