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

Вниз

Предотвращение вставки недопустимых символов из буфера   Найти похожие ветки 

 
User   (2010-04-10 16:25) [0]


Edit1KeyPress:
if not (Key in ["a".."z", "A".."Z", "а".."я", "А".."Я", "ё", "Ё"]) then Key := #0;


Пользуюсь этим нехитрым методом для предотвращения ввода в Edit недопустимых (для моей конкретной задачи) символов.

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

Как это можно исправить?


 
Правильный$Вася   (2010-04-10 17:14) [1]

вырезать после вставки?


 
Демо ©   (2010-04-10 17:46) [2]


> User   (10.04.10 16:25) 


Есть ещё событие OnChange


 
User   (2010-04-10 18:40) [3]


> вырезать после вставки?

Ну если не найду ничего лучшего...

> Есть ещё событие OnChange

Да, но в отличие от OnKeyPress у OnChange нет входящего параметра var Key: Char.


 
Правильный$Вася   (2010-04-10 18:45) [4]


> у OnChange нет входящего параметра var Key: Char.

зато там есть кое-что другое


 
Anatoly Podgoretsky ©   (2010-04-10 18:49) [5]

> User  (10.04.2010 18:40:03)  [3]

Тебе все сиволы доступны, а может ты не знаешь, что строка по сути это массив символов.


 
Blah-blah-blah...   (2010-04-10 21:55) [6]

SelStart := Edit1.SelStart;
Str := Edit1.Text;
for i := Length(Str) downto 1 do
 if (Str[i] in ["b", "l", "a", "h"]) then
 begin
   Delete(Str, i, 1);
   if (i <= SelStart) then
     SelStart := SelStart - 1;
 end;
Edit1.Text := Str;
Edit1.SelStart := SelStart;


P.S. Но, как по мне, лучше перехватывать WM_PASTE.



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

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

Наверх




Память: 0.48 MB
Время: 0.047 c
15-1264178027
@!!ex
2010-01-22 19:33
2010.08.27
Алгоритм конвертации 24 битной картинки в 8


15-1270124231
Славян
2010-04-01 16:17
2010.08.27
Нужна прога,которая берёт случайный набор слов и фраз(заданное на


2-1273775590
Германн
2010-05-13 22:33
2010.08.27
MessageDlg и русские буквы


2-1266306224
Den
2010-02-16 10:43
2010.08.27
Как прочитать логи?


2-1270199599
AlexCAHEK
2010-04-02 13:13
2010.08.27
TImage