tpTrialPegInputFrm.pas 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. unit tpTrialPegInputFrm;
  2. interface
  3. uses
  4. Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  5. Dialogs, StdCtrls, ExtCtrls;
  6. type
  7. TTrialPegInputForm = class(TForm)
  8. lblHint: TLabel;
  9. lePeg: TLabeledEdit;
  10. btnOk: TButton;
  11. btnCancel: TButton;
  12. procedure btnOkClick(Sender: TObject);
  13. private
  14. function GetPeg: string;
  15. public
  16. property Peg: string read GetPeg;
  17. end;
  18. function InputTrialPeg(var APeg: string): Boolean;
  19. implementation
  20. uses
  21. UtilMethods, mPegFilter;
  22. function InputTrialPeg(var APeg: string): Boolean;
  23. var
  24. vInputForm: TTrialPegInputForm;
  25. begin
  26. vInputForm := TTrialPegInputForm.Create(nil);
  27. try
  28. Result := vInputForm.ShowModal = mrOk;
  29. if Result then
  30. APeg := vInputForm.Peg;
  31. finally
  32. vInputForm.Free;
  33. end;
  34. end;
  35. {$R *.dfm}
  36. procedure TTrialPegInputForm.btnOkClick(Sender: TObject);
  37. begin
  38. if (lePeg.Text = '') then
  39. TipMessage('请输入起点桩号。')
  40. else if PegFilter.Filter(lePeg.Text) then
  41. ModalResult := mrOk
  42. else
  43. TipMessage('请按格式“K###+###~K###+###”输入桩号');
  44. end;
  45. function TTrialPegInputForm.GetPeg: string;
  46. begin
  47. Result := lePeg.Text;
  48. end;
  49. end.