Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Delphi 7 Как сделать чтобы "Конец интервала" всегда был больше "Начала интервала"

Egor Levchik Знаток (484), на голосовании 10 месяцев назад
Голосование за лучший ответ
Свиньи жарят людей Гуру (2596) 11 месяцев назад
 // это ты должен включить воображение, сделать можно поразному 
// ну например, по простому, можно сделать проверку по нажатию на enter
// это событие назначь на оба эдита в OnKeyPress
procedure TForm1.Edit2KeyPress(Sender: TObject; var Key: Char);
var
a, b: integer;
begin
a := 0;
b := 1;
case Key of
#13: begin
if not TryStrToInt(Edit1.Text, a) then
Edit1.Text := IntToStr(a);
TryStrToInt(Edit2.Text, b);
if a >= b then
Edit2.Text := IntToStr(a + 1);
Key := #0;
end;
end;
end;

// и еще одно событие на потерю фокуса
// это событие тоже на оба эдита в OnExit
// и еще в OnShow формы, если изначально в поля вписан бред
procedure TForm1.Edit2Exit(Sender: TObject);
var
Key: char;
begin
Key := #13;
Edit2.OnKeyPress(Sender, Key);
end;
Похожие вопросы