tpPartTenderFme.pas 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100
  1. unit tpPartTenderFme;
  2. interface
  3. uses
  4. tpPartTender, tpPeg_GclFme, tpPegGclGatherFme,
  5. Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  6. Dialogs, ComCtrls, ToolWin, ExtCtrls, XPMenu, JimPages, StdCtrls,
  7. JimLabels;
  8. const
  9. sPartResult = ' 褸뵀%s宮밑헌데桿炬써벎:렀鍋코헌데悧쏜띨%f,페儉宮밑헌데悧쏜띨%f';
  10. type
  11. TtpPartTenderFrame = class(TFrame)
  12. pnlResult: TPanel;
  13. tbResult: TToolBar;
  14. tobtnInPegs: TToolButton;
  15. tobtnRelaPegs: TToolButton;
  16. xpm: TXPMenu;
  17. jpsPartTender: TJimPages;
  18. jpsPartTenderInPegs: TJimPage;
  19. jpsPartTenderRelaPegs: TJimPage;
  20. labResult: TJimGradLabel;
  21. tobtnInGcls: TToolButton;
  22. jpsPartTenderInGcls: TJimPage;
  23. procedure tobtnInPegsClick(Sender: TObject);
  24. private
  25. FPartTenderData: TtpPartTender;
  26. FInPegFrame: TtpPeg_GclFrame;
  27. FInGclGatherFrame: TtpPegGclGatherFrame;
  28. FRelaPegFrame: TtpPeg_GclFrame;
  29. procedure SetPartTenderData(const Value: TtpPartTender);
  30. public
  31. constructor Create;
  32. destructor Destroy; override;
  33. procedure RefreshResult;
  34. property PartTenderData: TtpPartTender read FPartTenderData write SetPartTenderData;
  35. end;
  36. implementation
  37. uses
  38. UtilMethods;
  39. {$R *.dfm}
  40. { TtpPartTenderFrame }
  41. constructor TtpPartTenderFrame.Create;
  42. begin
  43. inherited Create(nil);
  44. FInPegFrame := TtpPeg_GclFrame.Create(nil);
  45. AlignControl(FInPegFrame, jpsPartTenderInPegs, alClient);
  46. FInGclGatherFrame := TtpPegGclGatherFrame.Create(nil);
  47. AlignControl(FInGclGatherFrame, jpsPartTenderInGcls, alClient);
  48. FRelaPegFrame := TtpPeg_GclFrame.Create(nil);
  49. AlignControl(FRelaPegFrame, jpsPartTenderRelaPegs, alClient);
  50. end;
  51. destructor TtpPartTenderFrame.Destroy;
  52. begin
  53. FRelaPegFrame.Free;
  54. FInPegFrame.Free;
  55. inherited;
  56. end;
  57. procedure TtpPartTenderFrame.RefreshResult;
  58. begin
  59. labResult.Caption := Format(sPartResult, [FPartTenderData.BeginPeg+'~'+FPartTenderData.EndPeg,
  60. FPartTenderData.TotalPrice, FPartTenderData.RelaTotalPrice]);
  61. labResult.Visible := ((FPartTenderData.InPegCount > 0) or (FPartTenderData.RelaPegCount > 0));
  62. end;
  63. procedure TtpPartTenderFrame.SetPartTenderData(const Value: TtpPartTender);
  64. begin
  65. FPartTenderData := Value;
  66. if Assigned(FPartTenderData) then
  67. begin
  68. FInPegFrame.Peg_GclData := FPartTenderData.InPegData;
  69. FInGclGatherFrame.PegGclGatherData := FPartTenderData.InGclGatherData;
  70. FRelaPegFrame.Peg_GclData := FPartTenderData.RelaPegData;
  71. RefreshResult;
  72. end;
  73. end;
  74. procedure TtpPartTenderFrame.tobtnInPegsClick(Sender: TObject);
  75. begin
  76. tobtnInPegs.Down := tobtnInPegs.Tag = TToolButton(Sender).Tag;
  77. tobtnInGcls.Down := tobtnInGcls.Tag = TToolButton(Sender).Tag;
  78. tobtnRelaPegs.Down := tobtnRelaPegs.Tag = TToolButton(Sender).Tag;
  79. jpsPartTender.ActivePageIndex := TToolButton(Sender).Tag;
  80. end;
  81. end.