⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ss_grp_init_plsr.pas

📁 省级集邮品管理ERP
💻 PAS
字号:
{*******************************************************}
{                                                       }
{                      批量设置                         }
{                                                       }
{            中软金马公司版权所有。2002.12前            }
{                                                       }
{            编制:中软金马邮资票品项目开发组           }
{                                                       }
{                                                       }
{*******************************************************}
(*
本模块在省级系统管理模块里面购入票库存初始化调用。

*)
unit SS_GRP_Init_PLSR;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls, Buttons, ExtCtrls ;

type
  TFrm_GRP_Init_PLSR = class(TForm)
    bbtn_Ok: TBitBtn;
    bbtn_Cancel: TBitBtn;
    pnl_Set: TPanel;
    gb_3: TGroupBox;
    lbl_Sel32: TLabel;
    rb_Sel31: TRadioButton;
    edt_31: TEdit;
    rb_Sel32: TRadioButton;
    edt_32: TEdit;
    rb_Sel1: TRadioButton;
    edt_1: TEdit;
    rb_Sel2: TRadioButton;
    rb_Sel3: TRadioButton;
    lbl_Sel1: TLabel;
    lbl_Sel31: TLabel;
    tb_Sel4: TRadioButton;
    chk_Sel3: TCheckBox;
    chk_Sel4: TCheckBox;
    GroupBox1: TGroupBox;
    Label1: TLabel;
    rb_Sel21: TRadioButton;
    edt_2: TEdit;
    rb_Sel22: TRadioButton;
    procedure edt_KeyPress(Sender: TObject; var Key: Char);
    procedure rb_Sel1Click(Sender: TObject);
    procedure rb_Sel2Click(Sender: TObject);
    procedure rb_Sel3Click(Sender: TObject);
    procedure rb_Sel31Click(Sender: TObject);
    procedure rb_Sel32Click(Sender: TObject);
    procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
    procedure FormShow(Sender: TObject);
    procedure tb_Sel4Click(Sender: TObject);
    procedure rb_Sel21Click(Sender: TObject);
    procedure rb_Sel22Click(Sender: TObject);
  private
    { Private declarations }
    procedure Edit_State(l_State: Integer); {设置界面状态}
    function Str2Float(Edit: TEdit): Boolean;
  public
    { Public declarations }
  end;

var
  Frm_GRP_Init_PLSR: TFrm_GRP_Init_PLSR;
  State: Integer;
  Over_Write: Boolean;
  Set_Result: Double;
  Hint_Time: Integer;
implementation

{$R *.DFM}

{初始化部分的批量处理输入模块,主要是进行输入以及判断。
石玉琢 2001.09.26补}
uses Pub;

{-------------------------------------------------------------------------------}
{设置界面状态}
procedure TFrm_GRP_Init_PLSR.Edit_State(l_State: Integer);
begin
  case l_State of
    1:
      begin
        State := 1;

        edt_1.Enabled := True;
        edt_2.Enabled := False;
        rb_Sel21.Enabled := False;
        rb_Sel22.Enabled := False;
        rb_Sel31.Enabled := False;
        rb_Sel32.Enabled := False;
        edt_31.Enabled := False;
        edt_32.Enabled := False;
        chk_Sel3.Enabled := False;
        chk_Sel4.Enabled := False;
      end;
    2:
      begin
//2002-04-02增加结算价=进价的设置 by jillshao
//        State := 2;

        edt_1.Enabled := False;
        edt_2.Enabled := True;
        rb_Sel21.Enabled := true;
        rb_Sel22.Enabled := true;
        rb_Sel31.Enabled := False;
        rb_Sel32.Enabled := False;
        edt_31.Enabled := False;
        edt_32.Enabled := False;
        chk_Sel3.Enabled := False;
        chk_Sel4.Enabled := False;
        if rb_Sel21.Checked = True then
        begin
          State := 21;
          edt_2.Enabled := True;
        end
        else
        begin
          State := 22;
          edt_2.Enabled := False;
        end;
      end;
    3:
      begin
        edt_1.Enabled := False;
        edt_2.Enabled := False;
        rb_Sel21.Enabled := False;
        rb_Sel22.Enabled := False;
        rb_Sel31.Enabled := True;
        rb_Sel32.Enabled := True;
        if rb_Sel31.Checked = True then
        begin
          State := 31;

          edt_31.Enabled := True;
          edt_32.Enabled := False;
        end
        else
        begin
          State := 32;

          edt_31.Enabled := False;
          edt_32.Enabled := True;
        end;
        chk_Sel3.Enabled := True;
        chk_Sel4.Enabled := False;
      end;
    4:
      begin
        State := 4;

        edt_1.Enabled := False;
        edt_2.Enabled := False;
        rb_Sel21.Enabled := False;
        rb_Sel22.Enabled := False;
        rb_Sel31.Enabled := False;
        rb_Sel32.Enabled := False;
        edt_31.Enabled := False;
        edt_32.Enabled := False;
        chk_Sel3.Enabled := False;
        chk_Sel4.Enabled := True;
      end;
  end;
end;

{-------------------------------------------------------------------------------}
procedure TFrm_GRP_Init_PLSR.FormShow(Sender: TObject);
begin
  Hint_Time := Application.HintPause;
  Application.HintPause := 0;
  Edit_State(1);
end;

procedure TFrm_GRP_Init_PLSR.rb_Sel1Click(Sender: TObject);
begin
  Edit_State(1);
end;

procedure TFrm_GRP_Init_PLSR.rb_Sel2Click(Sender: TObject);
begin
  Edit_State(2);
end;

procedure TFrm_GRP_Init_PLSR.rb_Sel3Click(Sender: TObject);
begin
  Edit_State(3);
end;

procedure TFrm_GRP_Init_PLSR.rb_Sel31Click(Sender: TObject);
begin
  Edit_State(3);
end;

procedure TFrm_GRP_Init_PLSR.rb_Sel32Click(Sender: TObject);
begin
  Edit_State(3);
end;

procedure TFrm_GRP_Init_PLSR.tb_Sel4Click(Sender: TObject);
begin
  Edit_State(4);
end;

{-------------------------------------------------------------------------------}
procedure TFrm_GRP_Init_PLSR.edt_KeyPress(Sender: TObject; var Key: Char);
begin
  if not (Key in ['0'..'9', '.', Chr(VK_BACK)]) then Key := Chr(0);
end;

{-------------------------------------------------------------------------------}
procedure TFrm_GRP_Init_PLSR.FormCloseQuery(Sender: TObject;
  var CanClose: Boolean);
begin
  if ModalResult = mrok then
    case State of
      1:
        begin
          if Str2Float(Edt_1) = True then
          begin
            if (StrToFloat(Edt_1.Text) > 100) or (StrToFloat(Edt_1.Text) < 0) then
            begin
              CHQMsgBox('折扣必须在0~100之间!');
              if Edt_1.Enabled = True then Edt_1.SetFocus;
              CanClose := False;
              exit;
            end;
          end
          else
            CanClose := False;
        end;
      21:
        begin
          if Str2Float(Edt_2) = False then
            CanClose := False;
        end;
      22: ;
      31:
        begin
          if Str2Float(Edt_31) = True then
          begin
            if (StrToFloat(Edt_31.Text) > 100) or (StrToFloat(Edt_31.Text) < 0) then
            begin
              CHQMsgBox('折扣必须在0~100之间!');
              if Edt_31.Enabled = True then Edt_31.SetFocus;
              CanClose := False;
              exit;
            end;
          end
          else
            CanClose := False;
          Over_Write := chk_Sel3.Checked;
        end;
      32:
        begin
          if Str2Float(Edt_32) = False then
            CanClose := False;
          Over_Write := chk_Sel3.Checked;
        end;
      4:
        begin
          Over_Write := chk_Sel4.Checked;
        end;
    end;

  if CanClose = True then
    Application.HintPause := Hint_Time;
end;

{-------------------------------------------------------------------------------}
{测试输入是否为合法的数数值}
function TFrm_GRP_Init_PLSR.Str2Float(Edit: TEdit): Boolean;
begin
  try
    Set_Result := StrToFloat(Edit.Text);
    Result := True;
  except
    CHQMsgBox('请输入合法数值!');
    if Edit.Enabled = True then Edit.SetFocus;
    Result := False;
    Exit;
  end;
end;

procedure TFrm_GRP_Init_PLSR.rb_Sel21Click(Sender: TObject);
begin
  Edit_State(2);
end;

procedure TFrm_GRP_Init_PLSR.rb_Sel22Click(Sender: TObject);
begin
  Edit_State(2);
end;

end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -