BidLotAliasFrm.pas 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111
  1. unit BidLotAliasFrm;
  2. interface
  3. uses
  4. Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  5. Dialogs, StdCtrls, ExtCtrls, ZjGridDBA, ZJGrid, DB, ComCtrls;
  6. type
  7. TBidAliasForm = class(TForm)
  8. zgBidLot: TZJGrid;
  9. zaBidLot: TZjGridDBA;
  10. Panel1: TPanel;
  11. ldeShortName: TLabeledEdit;
  12. btnAlter: TButton;
  13. btnSave: TButton;
  14. StatusBar1: TStatusBar;
  15. procedure zgBidLotMouseDown(Sender: TObject; Button: TMouseButton;
  16. Shift: TShiftState; X, Y: Integer);
  17. procedure btnAlterClick(Sender: TObject);
  18. procedure btnSaveClick(Sender: TObject);
  19. procedure zgBidLotCellTextChanging(Sender: TObject;
  20. const ACoord: TPoint; var NewValue: String; var Accept: Boolean);
  21. procedure zaBidLotGridRowMoved(Sender: TObject; const ACoord: TPoint;
  22. ADist: Integer; ADir: TZjMoveDirection);
  23. procedure FormShow(Sender: TObject);
  24. private
  25. FProject: TObject;
  26. FBuildProjectName: string;
  27. function GetDataSet: TDataSet;
  28. procedure SetDataSet(const Value: TDataSet);
  29. procedure SetBuildProjectName(const Value: string);
  30. public
  31. property DataSet: TDataSet read GetDataSet write SetDataSet;
  32. property Project: TObject read FProject write FProject;
  33. property BuildProjectName: string read FBuildProjectName write SetBuildProjectName;
  34. end;
  35. implementation
  36. {$R *.dfm}
  37. uses
  38. ScProjectManager;
  39. { TBidAliasForm }
  40. function TBidAliasForm.GetDataSet: TDataSet;
  41. begin
  42. Result := zaBidLot.DataSet;
  43. end;
  44. procedure TBidAliasForm.SetDataSet(const Value: TDataSet);
  45. begin
  46. zaBidLot.DataSet := Value;
  47. end;
  48. procedure TBidAliasForm.zgBidLotMouseDown(Sender: TObject;
  49. Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
  50. begin
  51. ldeShortName.Text := zaBidLot.DataSet['AliasName'];
  52. StatusBar1.Panels[1].Text := '标段: ' + zaBidLot.DataSet['ProjName'];
  53. StatusBar1.Panels[2].Text := '简称: ' + zaBidLot.DataSet['AliasName'];
  54. end;
  55. procedure TBidAliasForm.btnAlterClick(Sender: TObject);
  56. begin
  57. zaBidLot.DataSet.Edit;
  58. zaBidLot.DataSet['AliasName'] := ldeShortName.Text;
  59. zaBidLot.DataSet.Post;
  60. end;
  61. procedure TBidAliasForm.btnSaveClick(Sender: TObject);
  62. begin
  63. TProject(FProject).Save(False);
  64. end;
  65. procedure TBidAliasForm.zgBidLotCellTextChanging(Sender: TObject;
  66. const ACoord: TPoint; var NewValue: String; var Accept: Boolean);
  67. begin
  68. if ACoord.Y >= TZJGrid(Sender).FixedRowCount + zaBidLot.DataSet.RecordCount then
  69. Accept := False;
  70. end;
  71. procedure TBidAliasForm.SetBuildProjectName(const Value: string);
  72. begin
  73. FBuildProjectName := Value;
  74. StatusBar1.Panels[0].Text := '建设项目: ' + FBuildProjectName;
  75. end;
  76. procedure TBidAliasForm.zaBidLotGridRowMoved(Sender: TObject;
  77. const ACoord: TPoint; ADist: Integer; ADir: TZjMoveDirection);
  78. begin
  79. ldeShortName.Text := zaBidLot.DataSet['AliasName'];
  80. StatusBar1.Panels[1].Text := '标段: ' + zaBidLot.DataSet['ProjName'];
  81. StatusBar1.Panels[2].Text := '简称: ' + zaBidLot.DataSet['AliasName'];
  82. end;
  83. procedure TBidAliasForm.FormShow(Sender: TObject);
  84. begin
  85. if zaBidLot.DataSet.RecordCount > 0 then
  86. begin
  87. ldeShortName.Text := zaBidLot.DataSet['AliasName'];
  88. StatusBar1.Panels[1].Text := '标段: ' + zaBidLot.DataSet['ProjName'];
  89. StatusBar1.Panels[2].Text := '简称: ' + zaBidLot.DataSet['AliasName'];
  90. end;
  91. end;
  92. end.