Форум: "Основная";
Текущий архив: 2005.03.13;
Скачать: [xml.tar.bz2];
ВнизМаска в Edit Найти похожие ветки
← →
paule (2005-03-01 11:43) [0]Мастера подскажите пожалуйста.
У меня на форме TEdit.
как разрешить вводить туда только числа и знак "."?
← →
MU (2005-03-01 11:45) [1]например, обработайте OnKeyPress
← →
Shirson © (2005-03-01 11:52) [2]Закладка Additional
Компонент MaskEdit
← →
Aleks © (2005-03-01 12:21) [3]// нажатие клавиши в поле Editl
procedure TForml.EditlKeyPress(Sender: TObject; var Key:
begin
// В поле (Editl) можно ввести только
// цифры. Процедура проверяет, является ли символ
// допустимым. Если нет, то она заменяет
// введенный символ нулевым. В результате символ
// в поле редактирования не отображается.
// Key — символ, соответствующий нажатой клавише
if not ((Key >= "0") and (Key <="9") or (Key = ".")))then
Key := Chr(0);
end;
← →
BillyJeans (2005-03-01 13:57) [4]procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if not (key in ["0".."9", "."]) then key := #0;
end;
← →
Leshiy © (2005-03-01 14:44) [5]Я бы добавил еще: #8, на всякий случай :)
← →
Antonn © (2005-03-01 15:10) [6]а я вместо "." поставил туда DecimalSeparator:) Так ведь можно?
← →
BillyJeans (2005-03-01 15:11) [7]что просили то и нарисовал ;о)
← →
begin...end © (2005-03-01 15:13) [8]Текст можно вставить из clipboard"а. Поэтому лучше анализировать и корректировать текст в OnChange. А ещё лучше - не ограничивать ввод, а выдавать сообщение об ошибке в случае, если потом, при использовании текста edit"а, выяснится, что там введены некорректные символы. Или использовать TMaskEdit.
← →
MU (2005-03-01 15:14) [9]2 Antonn © (01.03.05 15:10) [6]
>> а я вместо "." поставил туда DecimalSeparator:) Так ведь можно?
нельзя... может, он дату вводить хочет... ;)
← →
paule (2005-03-01 17:12) [10]а как это сделать MaskEdit-ом? Я разбирался, но понять так и не смог
← →
Antonn © (2005-03-01 17:15) [11]paule (01.03.05 17:12) [10]
скажи точно, тебе просто числа с разделителем нужно фильтровать или даты там всякие?..
ЗЫ MaskEdit не уважаю... Лучше ручками:)
← →
paule (2005-03-01 17:36) [12]только числа.
← →
Antonn © (2005-03-01 17:40) [13]paule (01.03.05 17:36) [12]
а вставка из буфера необходима? если нет, то [4]
← →
paule (2005-03-02 03:54) [14]dcnfdrf bp ,eathf djpvj;yf
← →
paule (2005-03-02 03:54) [15]извините..
Вставка из буфера возможна
← →
Shirson © (2005-03-02 07:41) [16]
if not (key in ["0".."9", "."]) then key := #0;
илиif not ((Key >= "0") and (Key <="9") or (Key = ".")))then
Key := Chr(0);
Позволят вводить 000987.9872.940.000.1
А MaskEdit прекрасно справляется с поставленной задачей. Что с ним непонятно? (самый простой вариант, например !99999.99;1;)
← →
paule (2005-03-02 11:48) [17]а если число будет не 5-ти разрядное, а к примеру 7-и
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2005.03.13;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.038 c