Проверка условия

  • Автор темы Luciferium
  • Дата начала
Статус
Закрыто для дальнейших ответов.
L

Luciferium

Как сделать проверку ввода всех или конкретно нужных полей? Если кокое-то поле не введено, то выдать ошибку. Ещё хочу сделать, чтобы пока не введены нужные поля, кнопка подтверждения ввода была не активна, после ввода - активна. Как это сделать все? Заранее спасибо.
 
C

chingiz

Мысли читать не умею. Проверку ввода полей где, куда, зачем???? Если поле не введено куда???
Ну а насчет кнопки просто Button.Enabled:=False; - до проверки условия и, если ты получил удовлетворение от прооверки то Button.Enabled:=True;
 
O

Over

На каждое поле ввода можно поставить обработку события OnChange. В обработчике получать текст из каждого поля ввода. Если длина текста = 0, то выдать ошибку.
 
C

chingiz

Полностью согласен, при вводе данных в поле надо обрабатывать событие OnChange, это конечно хорошо, но опять же куда вводить данные? Ведь можно ввести данные в Edit - но только одно. Можно в ComboBox тоже одно, хотя в принципе если соответствующим образом его обработать, то можно в него вводить и несколько значений. А можно и в Memo ввести все поля сразу и проиизвести проверку, может в DBEdit, Grid - это первое что приходит на ум, а может и еще куда нибудь. Может "Luciferium" уточнит что ему надо конкретно?
P.S. Кстати я сразу понял Luciferium так что ему надо сделать проверку по имени поля, потом прочитал сообщение Over - он решил что нужна проверка ввода данных в поле. Что же тебе надо Luciferium??
 
S

SNike

Используй OnChange, оттуда же вызывай подпрограмму проверки разрешения своей кнопки.
К примеру

Код:
procedure MainForm.Edit1Change(Sender: TObject)
begin
CheckToEnable;
end;

Procedure CheckToEnable;
begin
Button.Enabled := (Edit1.Text <> '') and (Edit2.Text <> '')
end;

А правильность введенных данных можешь контролировать из процедуры обработки нажатия твоей клавиши (я так пнл, что это клавиша Ok ;) )
 
B

Barmutik

Используйте мощный механизм Action... у него есть специально разработанный обработчик OnUpdateAction в котором как раз и следует делать такие проверки...
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!