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

Вниз

Как недопустить текстовые символы в edit?   Найти похожие ветки 

 
49 Cent   (2006-02-25 04:32) [0]

Есть 4 tedit и необходимо, чтобы в них заносились только цифры и никаких букв и символов. Каким образом выполнить эту задачу? Обязательно писать код или может в свойствах компонента можно установить подобную настройку?


 
Defunct ©   (2006-02-25 04:52) [1]

ответ на ваш вопрос:
в OnKeyPress если прочитано что-то, что вам не нужно просто заменить символом #0.

наводящий пример (здесь при вводе не пропускаются буквы, но пропускаются некоторые символы):
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
 if Byte(Key) > $39 then
    Key := #0;
end;



но можно пойти более правильным путем. Пусть пользователь пишет то, что посчитает нужным, а когда он все введет, по нажатию например кнопки "Ок" - проверить правильность всего введенного.


 
Fay ©   (2006-02-25 06:31) [2]

ES_NUMBER


 
49 Cent   (2006-02-25 18:33) [3]

2 Fay и Defunct

Спасибо за помощь! По вашим подсказкам нашел 2 варианта решения проблемы:

1. SetWindowLong(Edit1.Handle, GWL_STYLE,GetWindowLong(Edit1.Handle, GWL_STYLE) or  ES_NUMBER );
2. procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
 if not (Key in ["0".."9",#8]) then Key:=#0;
end;


 
Pit ©   (2006-02-25 18:38) [4]

procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
case Key of
"a" .. "z","A" .. "Z": ;
else Key := Chr(0);
end;
end;


 
Pit ©   (2006-02-25 18:39) [5]

procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
case Key of
"0" .. "9",#8: ; // цифры и клавиша <Backspace>
else Key := Chr(0);
end;
end;


 
Джо ©   (2006-02-25 19:43) [6]

Все 3 варианта не помешают вставке чего угодно из Буфера обмена. Поддерживаю [1] Defunct (последнее предложение).


 
Pit ©   (2006-02-25 19:51) [7]


> Джо ©   (25.02.06 19:43) [6]
> Поддерживаю [1] Defunct


defunct [defunct]
прил. усопший, покойный, умерший, несуществующий, исчезнувший, вымерший
Зачем же так плохо обо мне.


 
Джо ©   (2006-02-25 20:26) [8]

> [7] Pit ©   (25.02.06 19:51)
> defunct [defunct]
> прил. усопший, покойный, умерший, несуществующий, исчезнувший,
> вымерший
> Зачем же так плохо обо мне.

Нет, это ни в коем случае не о тебе. Или это шутка? Или просто пароксизм?


 
Pit ©   (2006-02-25 20:33) [9]

Нет не шутка, просто первая моя так сказать специализация is  English, извини если обидел, был не прав, чего только не подумаешь, у каждого свои заморочки.


 
Pit ©   (2006-02-25 20:39) [10]

Извини Джо первая мысль перевала, вторая подумала.


 
Defunct ©   (2006-02-25 20:42) [11]

Джо ©   (25.02.06 20:26) [8]

Это ему мой ник-нейм не нравится :)


 
Pit ©   (2006-02-25 21:03) [12]

Давайте больше не будем о грустом, и не будем засорять форум ненужными фразами. Я извинился и по моему проблемма исчерпона. С уважением Pit.


 
Defunct ©   (2006-02-25 21:19) [13]

Pit ©   (25.02.06 21:03) [12]

нет проблем, можете звать меня funct или def если вам так будет удобней ;>


 
Pit ©   (2006-02-25 21:29) [14]

Уважаемые програмисты новый ник-нейм Defunct = funct or def.


 
Галинка ©   (2006-02-25 21:42) [15]

Поддерживаю идею разрешить вводить все, а потом в защищенном блоке отлавливать исключение. Муторно, но надежно. Да и опечатки могут быть...


 
Pit ©   (2006-02-25 21:46) [16]


> Галинка ©   (25.02.06 21:42) [15]
> Поддерживаю идею разрешить вводить все, а потом в защищенном
> блоке отлавливать исключение. Муторно, но надежно. Да и
> опечатки могут быть...


ДА я тоже за еееето.  Даздравствует руськуя могучая языка.



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

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

Наверх




Память: 0.5 MB
Время: 0.043 c
3-1137925525
Malign
2006-01-22 13:25
2006.03.12
Обращение к таблице из другой (не текущей) БД в IB и FB.


2-1140523737
Маленький мук
2006-02-21 15:08
2006.03.12
Простой, но нерешаемый вопрос.. :(


15-1140024293
Хинт
2006-02-15 20:24
2006.03.12
Баннер на сайт


2-1140266785
KILROY
2006-02-18 15:46
2006.03.12
инфа о файле,скан директории,ADO.


2-1140962453
Jet
2006-02-26 17:00
2006.03.12
Определение пути до папки через OpenDialog