Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Синтаксис
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 19.07.2007, 23:00
shaman shaman вне форума
Новичок
 
Регистрация: 19.07.2007
Сообщения: 65
Репутация: 5
Вопрос Помогите разобраться с MaskEdit

У меня на форме присутствует MaskEdit. Мне нужно написать код, чтоб при нажатии на кнопку проверялось: если в MaskEdit ничего не введено, то выдается соответствующая ошибка, если в MaskEdit введено меньше 16 цифр, то выдается соответствующая ошибка, а если всё нормально тоесть введено 16 цифр, то программа продолжает работать дальше по своему коду. Так же мне нужно сделать так, чтобы в MaskEdit вводились только цифры. Пожалуйста помогите!!! Мой адрес: x-shaman-x@bk.ru
Ответить с цитированием
  #2  
Старый 19.07.2007, 23:41
Аватар для <<D>>
<<D>> <<D>> вне форума
Активный
 
Регистрация: 06.05.2007
Адрес: ГДЕ ТО В СОЛНЕЧНОЙ СИСТЕМЕ
Сообщения: 207
Репутация: 15
Радость

if length(MaskEdit1.Text)=0 then
begin
showmessage('Не введено ни одного символа');
end
else
if (length(MaskEdit1.Text)>0) and (length(MaskEdit1.Text)<16) then
showmessage('Недостаточное кол-во символов')
else
if length(MaskEdit1.Text)=16 then
begin

//Делай что нужно

end;
__________________
Кому я должен - всем прощаю!!!!

Последний раз редактировалось <<D>>, 20.07.2007 в 00:08.
Ответить с цитированием
  #3  
Старый 19.07.2007, 23:58
Аватар для 4kusNick
4kusNick 4kusNick вне форума
Местный
 
Регистрация: 06.09.2006
Адрес: Россия, Санкт-Петербург
Сообщения: 444
Репутация: 550
По умолчанию

Код:
begin

  if Length(Edit1.Text) <> 16 then
  begin
    MessageBox(0,'ERROR',0,0);
  end
  else
  begin

  //  делаем, что хотим

  end;

end;
__________________
THE CRACKER IS OUT THERE
Ответить с цитированием
  #4  
Старый 20.07.2007, 00:09
shaman shaman вне форума
Новичок
 
Регистрация: 19.07.2007
Сообщения: 65
Репутация: 5
Вопрос Спасибо

Спасибо, а как сделать, чтобы в MaskEdit только цифры вводились?
Ответить с цитированием
  #5  
Старый 20.07.2007, 00:13
Аватар для <<D>>
<<D>> <<D>> вне форума
Активный
 
Регистрация: 06.05.2007
Адрес: ГДЕ ТО В СОЛНЕЧНОЙ СИСТЕМЕ
Сообщения: 207
Репутация: 15
По умолчанию

Можно вот так:

MaskEdit1.editMask:='################';

но определять кол-во букв оно не будет
__________________
Кому я должен - всем прощаю!!!!
Ответить с цитированием
  #6  
Старый 20.07.2007, 03:33
Аватар для 4kusNick
4kusNick 4kusNick вне форума
Местный
 
Регистрация: 06.09.2006
Адрес: Россия, Санкт-Петербург
Сообщения: 444
Репутация: 550
По умолчанию

Уважаемый Шаман, пожалуйста, не делайте больше одинаковых топиков, т.к. это не культурно и не этично . Если каждый начнет плодить одинаковые топики, то так весь форум превратится в неструктурированную помойку Ничего личного, я понимаю, что Вы наверняка это сделали не специально, лишь полезный совет.

А на счет только цифр - советую обрабатывать событие OnKeyPress и, в случае, если введена не цифра, то не позволять этому символу появиться в едитбоксе не выдавая никаких сообщеий и beep'ов...

Код:
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
  if ((UpCase(Key) < 'A') or (UpCase(Key) > 'Z')) then Key := #0; // переделайте под цифры
end; 
__________________
THE CRACKER IS OUT THERE
Ответить с цитированием
  #7  
Старый 20.07.2007, 13:05
~ SaM ~ ~ SaM ~ вне форума
Начинающий
 
Регистрация: 05.01.2007
Адрес: Днепропетровск
Сообщения: 141
Репутация: 25
По умолчанию

Код:
procedure TForm14.EditKeyPress(Sender: TObject; var Key: Char);
begin
    If not (Key in [#8, #22, '0'..'9']) Then Key := #0;
end;

Использование:

Код:
procedure TForm1.FormCreate(Sender: TObject);
begin
..............
MaskEdit1.OnKeyPress:=EditKeyPress;
..............
end;
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 16:09.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter