>>698
あーすいません環境書いてなかった
WinXP+Delphi6Personalです
Form2は BorderStyle:=bsDialog; FormStyle:=fsStayOnTop; くらいしかいじってなくて
Input:TEditとOKボタン(ModalResult:=mrOK;)があって
Input.Textが正の数を表す文字列じゃなかったら
MessageDlg('正の数じゃないとダメよ', mtWarning, [mbOK], 0); してます
以下該当部分のソース(全角インデントなのでコピペじゃ動きません)

procedure TForm2.btnOKClick(Sender: TObject);
var
 InputBuf: integer;
begin
 //Check Input
 if Input.Modified then
 begin
  InputBuf := StrToIntDef(Input.Text, -1);
  if (InputBuf < 0) then
  begin
   MessageDlg('有効な値ではありません', mtWarning, [mbOK], 0);
   Input.SetFocus();
   exit;
  end;
 end;
 { 事後処理略 }
 Form2.Hide();
end;