Browse Source

超计比例,限制为50-100

MaiXinRong 6 years ago
parent
commit
c9cecffa36
2 changed files with 31 additions and 0 deletions
  1. 2 0
      Forms/OptionFrm.dfm
  2. 29 0
      Forms/OptionFrm.pas

+ 2 - 0
Forms/OptionFrm.dfm

@@ -145,6 +145,8 @@ object OptionForm: TOptionForm
           Height = 20
           TabOrder = 3
           Text = '100'
+          OnExit = edtOverRangePercentExit
+          OnKeyDown = edtOverRangePercentKeyDown
           OnKeyPress = edtOverRangePercentKeyPress
         end
       end

+ 29 - 0
Forms/OptionFrm.pas

@@ -32,6 +32,9 @@ type
     procedure cbAutoSaveClick(Sender: TObject);
     procedure rbLedgerClick(Sender: TObject);
     procedure edtOverRangePercentKeyPress(Sender: TObject; var Key: Char);
+    procedure edtOverRangePercentExit(Sender: TObject);
+    procedure edtOverRangePercentKeyDown(Sender: TObject; var Key: Word;
+      Shift: TShiftState);
   private
     procedure SetSaveIntervalEnable(AEnable: Boolean);
     function GetOverRangeType: Integer;
@@ -136,4 +139,30 @@ begin
     Key := #0;
 end;
 
+procedure TOptionForm.edtOverRangePercentExit(Sender: TObject);
+var
+  fPer: Double;
+begin
+  fPer := StrToIntDef(TEdit(Sender).text, 0);
+  if (fPer < 50) then
+    TEdit(Sender).text := '50'
+  else if (fPer > 100) then
+    TEdit(Sender).text := '100';
+end;
+
+procedure TOptionForm.edtOverRangePercentKeyDown(Sender: TObject;
+  var Key: Word; Shift: TShiftState);                          
+var
+  fPer: Double;
+begin
+  if Key = #13 then
+  begin
+    fPer := StrToIntDef(TEdit(Sender).text, 0);
+    if (fPer < 50) then
+      TEdit(Sender).text := '50'
+    else if (fPer > 100) then
+      TEdit(Sender).text := '100';
+  end;
+end;
+
 end.