Maskedit delphi
Автор Zero Megaman задал вопрос в разделе Другие языки и технологии
Delphi: Как разрешить вводить все цифры и только первые 6 букв лат. алфавита в поле MaskEdit? и получил лучший ответ
Ответ от Ў В[гуру]
Мне кажется, смысл задачи в том, что нужно вводить шестнадцатиричные числа, то есть символы от 0 до 9 и от A до F
Компонент Edit может реагировать на нажатие клавиши на клавиатуре, при этом будет распознаваться, какая именно клавиша нажата.
Значение этой клавиши можно проанализировать и если оно не подходит, то отбросить.
Значит, ищем у компонента Edit событие OnKeyPress, создаем процедуру и пишем там проверку.
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if not (Key in [#8,'0'..'9','A'..'F','a'..'f']) then Key := #0;
end;
То есть, если нажата клавиша не число от 0 до 9, не латинская буква от A до F, большая или маленькая, то она нам не нужна, мы ее превращаем в пустышку. Еще нам может понадобиться клавиша BackSpace, чтобы можно было стереть неправильно введенный символ, она обозначается #8.
Вот и все.
Если непонятно, спрашивай.
Ю В
Мыслитель
(9301)
Ну мне же совершенно неизвестен ваш уровень. Я не люблю, когда люди тупо переписывают код, мне нравится, когда они понимают, что делают. Поэтому с комментариями.
Шаблон (маска) задается с помощью свойства EditMask и состоит из трех полей разделенных между собой символами точка с запятой. В первом поле находиться сам шаблон (маска) . Второе поле определяет, войдут ли вспомогательные символы в итоговый текст (по умолчанию 1). Если стоит 0, то они не будут в итоговом результате, а видны на дисплее при редактировании. Любой иной символ разрешает такое включение. Третье поле отвечает за вывод незаполненных (пустых) символов в поле ввода (по умолчанию это символ подчеркивания) . При не заданных значениях второго и третьего полей, действуют значения по умолчанию.
читай ссылка
по маске LLLLLL и т. п.
if (not (Key in ['A'..'Z'])) or (not (Key in ['A'..'F'])) then Key:=#0;
Лучше использовать простой Edit и обрабатывать ввод символов в OnKeyPress
Что такое Солнечный ветер и далеко ли он "дует" ?
Что такое Солнечный ветер и далеко ли он "дует" ?
Наша планетная система существует в крайне
подробнее...
люди где скачать Turbo delphi explorer жду прямой ссылки!
Borland Turbo Delphi Explorer 2006
portfolis, 14:06, 23 июля 2010
Turbo Delphi
подробнее...
Существуют ли в Delphi стандартные хэш-функции? Например, как MD5 в PHP.
Вот модуль, вычисляющий MD5 в Delphi. Полностью могу прислать по почте. Если надо - пиши ( :-))))
подробнее...
Вопрос по Delphi 7. Функция VarIsNumeric.
var
x: Real;
try
x := StrToFloat(Edit1.Text);
except
x := 0; // не
подробнее...
как установить RxLib под Delphi 7? устанавливаю неф. не получается.. . если можно по подробнее про процесс уст-ки.
Uninstall previous installed version of RX Library from Delphi 5 IDE.
Remove previously
подробнее...
Delphi. Пароль в виде звёздочек
В свойствах Edit найди параметр PasswordChar по умолчанию там #0 измени на * или № или что
подробнее...
Delphi. Не работает FindWindowEx.
Чудес не бывает. Обратная совместимость должна быть. Мелкомягкие её обеспечивают для таких
подробнее...
DecodeDate(Now, y, m, day) - ошибка DELPHI. Помогите, пожалуйста!
что нужно?
Oleh Huz'
Просветленный
(46611)
не объявил,
подробнее...
1.Что может являться аргументом функции a.константа b.ссылка c.функция)
В каком языке? В Delphi, например, все перечисленное.
Jurijus Zaksas
(185115)
подробнее...
Что является опытным обоснованием существования промежутков между молекулами?
Диффузия.
Диффузия - взаимное проникновение молекул соприкасающихся веществ. При диффузии
подробнее...
Связь между напряжённостью и напряжением
E=U/d
Напряженность электрического поля равна отношению напряжения к расстоянию между
подробнее...
Delphi7 - Подскажите как ограничить количество цифр в Edit?
Специально сейчас проверил. Выставил Edit1.MaxLength:=5 и попробовал ввести что-либо. Хоть с
подробнее...
Помогите пожалуйста! Английский язык (((
Одни из наиболее общительных и дружелюбных членов животного мира – представители семейства
подробнее...