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

📄 txlfrm.~pas

📁 本光盘是《Delphi 7应用教程》一书的配套光盘
💻 ~PAS
字号:
unit txlfrm;

interface

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

type
  TForm1 = class(TForm)
    Button1: TButton;
    Button2: TButton;
    Button4: TButton;
    Button3: TButton;
    Label1: TLabel;
    EditNo: TEdit;
    Label2: TLabel;
    EditName: TEdit;
    Label3: TLabel;
    Editage: TEdit;
    Label4: TLabel;
    EditSex: TEdit;
    Label5: TLabel;
    EditAddress: TEdit;
    Label6: TLabel;
    EditPhone: TEdit;
    Label7: TLabel;
    EditCode_Bm: TEdit;
    ChkMarriage: TCheckBox;
    Button5: TButton;
    procedure FormCreate(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button4Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
    procedure Button5Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;
   Procedure   ClsValue() ;
   Procedure  OkOrCancel();
   Procedure  AddOrReadpro();
var
  Form1: TForm1;

implementation

type
   TXL= record
      No:String[10];
      Name: string[10];
      Age:integer;
      Sex:String[2];
      Address:string[30];
      Phone:String[10];
      Code_Bm:string[10];
      Marriage:Boolean;
  end;
  TXLLIST = file of TXL;
 var
   Vtxl:TXLLIST;
   AddOrRead:Boolean;
   TXLA:TXL;
   RNO:Integer;

{$R *.dfm}

Procedure DispValue(txla:TXL);
   begin
      Form1.EditNo.Text:=Txla.No ;
      Form1.EditName.Text :=Txla.Name ;
      Form1.Editage.Text  :=IntTostr(txla.Age );
      Form1.EditSex.Text  :=txla.Sex ;
      Form1.EditAddress.Text :=Txla.Address;
      Form1.EditPhone.Text :=Txla.Phone ;
      Form1.EditCode_Bm.Text :=Txla.Code_Bm ;
      Form1.ChkMarriage.Checked :=txla.Marriage;
   end;
Procedure SetValue(Var txla:txl);
   begin
      Txla.No:=Form1.EditNo.Text ;
      Txla.Name :=Form1.EditName.Text ;
      Txla.Age :=Strtoint(Form1.EditAge.Text );
      Txla.Sex :=Form1.EditSex.Text ;
      Txla.Address :=Form1.EditAddress.Text ;
      Txla.Phone :=Form1.EditPhone.Text ;
      Txla.Code_Bm :=Form1.EditCode_Bm.Text ;
      Txla.Marriage :=Form1.ChkMarriage.Checked ;
   end;
procedure ControlEnabled();
   begin
      Form1.EditNo.Enabled :=True;
      Form1.EditName.Enabled :=True;
      Form1.Editage.Enabled :=True;
      Form1.EditSex.Enabled :=True;
      Form1.EditAddress.Enabled :=True;
      Form1.EditPhone.Enabled :=True;
      Form1.EditCode_Bm.Enabled :=True;
      Form1.ChkMarriage.Enabled :=True;
   end;
procedure ControlDisabled();
   begin
      Form1.EditNo.Enabled :=False;
      Form1.EditName.Enabled :=False;
      Form1.Editage.Enabled :=False;
      Form1.EditSex.Enabled :=False;
      Form1.EditAddress.Enabled :=False;
      Form1.EditPhone.Enabled :=False;
      Form1.EditCode_Bm.Enabled :=False;
      Form1.ChkMarriage.Enabled :=False;
   end;
Procedure   ClsValue() ;
  begin
    Form1.EditNo.text:='';
    Form1.EditName.text:='';
    Form1.EditAge.text:='';
    Form1.EditSex.text:='';
    Form1.EditAddress.text:='';
    Form1.EditPhone.text:='';
    Form1.EditCode_Bm.text:='';
    Form1.ChkMarriage.Checked :=False;
  end;
Procedure  OkOrCancel();
  begin
     Form1.Button1.Enabled :=True;
     Form1.Button2.Enabled :=True;
     Form1.Button3.Enabled:=False;
     Form1.Button4.Enabled :=False;
  end;
 Procedure  AddOrReadpro();
  begin
     Form1.Button1.Enabled :=False;
     Form1.Button2.Enabled :=False;
     Form1.Button3.Enabled:=True;
     Form1.Button4.Enabled :=True;
  end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  clsValue;
  OkOrCancel;
  ControlDisabled();
  AssignFile(Vtxl,'d:\aP.dat');
  if fileexists('d:\aP.dat') then
     Reset(vtxl)
  else
     rewrite(vtxl);
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  AddOrRead:=True;
  AddOrReadPro;
  ControlEnabled;
  ClsValue();
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
  AddOrRead:=False;
  AddOrReadpro;
  Rno:=strtoint(InputBox('输入记号号','请输入记录号','1'));
  ShowMessage('记录数是:'+IntToStr(FileSize(vTxl)));
  Seek(Vtxl,Rno-1);
  Read(Vtxl,Txla);
  DispValue(txla);
  ControlEnabled;
end;

procedure TForm1.Button4Click(Sender: TObject);
begin
 If AddOrRead then
    begin
      setvalue(Txla);
      Seek(vtxl,Filesize(vtxl));
      write(vtxl,txla);
    end
    else
       begin
         setvalue(Txla);
         Seek(Vtxl,Rno-1);
         write(vtxl,txla);
       end;
  OkOrCancel;
  ControlDisabled;
end;

procedure TForm1.Button3Click(Sender: TObject);
begin
  OkOrCancel;
  ControlDisabled;
  Dispvalue(Txla);
end;

procedure TForm1.Button5Click(Sender: TObject);
begin
  CloseFile(VTXL);
  Application.Terminate ;
end;

end.

⌨️ 快捷键说明

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