BillsPasteSelectFrm.pas 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. unit BillsPasteSelectFrm;
  2. interface
  3. uses
  4. Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  5. Dialogs, ExtCtrls, StdCtrls;
  6. type
  7. TBillsPasteSelectForm = class(TForm)
  8. btnOk: TButton;
  9. btnCancel: TButton;
  10. pnlPos: TPanel;
  11. rbNext: TRadioButton;
  12. rbPre: TRadioButton;
  13. rbChild: TRadioButton;
  14. Label1: TLabel;
  15. procedure btnOkClick(Sender: TObject);
  16. private
  17. function GetPos: Integer;
  18. public
  19. property Pos: Integer read GetPos;
  20. end;
  21. function SelectBillsPasteType(var APos: Integer): Boolean;
  22. implementation
  23. uses
  24. UtilMethods;
  25. {$R *.dfm}
  26. function SelectBillsPasteType(var APos: Integer): Boolean;
  27. var
  28. SelectForm: TBillsPasteSelectForm;
  29. begin
  30. SelectForm := TBillsPasteSelectForm.Create(nil);
  31. try
  32. Result := SelectForm.ShowModal = mrOk;
  33. if Result then
  34. APos := SelectForm.Pos;
  35. finally
  36. SelectForm.Free;
  37. end;
  38. end;
  39. { TBillsPasteSelectForm }
  40. function TBillsPasteSelectForm.GetPos: Integer;
  41. begin
  42. if rbChild.Checked then
  43. Result := 0
  44. else if rbNext.Checked then
  45. Result := 1
  46. else if rbPre.Checked then
  47. Result := 2
  48. else
  49. Result := -1;
  50. end;
  51. procedure TBillsPasteSelectForm.btnOkClick(Sender: TObject);
  52. begin
  53. if (Pos = -1) then
  54. WarningMessage('粘贴层次结构模式下,须选择插入节点的类型!')
  55. else
  56. ModalResult := mrOk;
  57. end;
  58. end.