Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Потрепаться";
Текущий архив: 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.009 c
4-35099
Akvilon
2003-04-12 14:38
2003.06.12
эквивалент FindWindow для дочерних окон


3-34693
Marat111
2003-05-22 15:25
2003.06.12
Значение автоинкрементного поля


3-34682
Raduga
2003-05-06 18:17
2003.06.12
SOS!!!!!!! Недостаток физической памяти!


3-34691
mao
2003-05-21 18:34
2003.06.12
Кодировка и BDE


1-34818
Mishenka
2003-06-02 19:17
2003.06.12
Как получить пиктограмму к программе?





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский