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

📄 u_main.~pas

📁 这是一个非常使用的DELPHI源码的例子,用的是SQL数据库和DELPHI企业版
💻 ~PAS
字号:
unit U_Main;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, jpeg, ExtCtrls, StdCtrls, XPStyleActnCtrls, ActnList, ActnMan,strutils;

type
  TFrm_main = class(TForm)
    Image1: TImage;
    Panel2: TPanel;
    Panel1: TPanel;
    Label1: TLabel;
    Panel3: TPanel;
    Label2: TLabel;
    Panel4: TPanel;
    Panel5: TPanel;
    Label3: TLabel;
    Label4: TLabel;
    Button1: TButton;
    Button2: TButton;
    Button3: TButton;
    Button4: TButton;
    Button5: TButton;
    Button6: TButton;
    Button7: TButton;
    Button8: TButton;
    Button9: TButton;
    Button10: TButton;
    Button11: TButton;
    Button12: TButton;
    Button13: TButton;
    Button14: TButton;
    Panel6: TPanel;
    Lbl: TLabel;
    Panel7: TPanel;
    Lbl_jg: TLabel;
    Panel8: TPanel;
    Lbl_je: TLabel;
    Panel9: TPanel;
    Label8: TLabel;
    Timer1: TTimer;
    ActionManager1: TActionManager;
    A1: TAction;
    A2: TAction;
    A3: TAction;
    A4: TAction;
    A5: TAction;
    A6: TAction;
    A7: TAction;
    A8: TAction;
    A9: TAction;
    A10: TAction;
    A11: TAction;
    A12: TAction;
    Action1: TAction;
    Action2: TAction;
    procedure Button14Click(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure Timer1Timer(Sender: TObject);
    procedure  list_add();
    procedure  dataSave();
    procedure A12Execute(Sender: TObject);
    procedure A11Execute(Sender: TObject);
    procedure A1Execute(Sender: TObject);
    procedure A2Execute(Sender: TObject);
    procedure A3Execute(Sender: TObject);
    procedure A4Execute(Sender: TObject);
    procedure A5Execute(Sender: TObject);
    procedure A6Execute(Sender: TObject);
    procedure A7Execute(Sender: TObject);
    procedure A8Execute(Sender: TObject);
    procedure A9Execute(Sender: TObject);
    procedure A10Execute(Sender: TObject);
    procedure Action1Execute(Sender: TObject);
    procedure Action2Execute(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Frm_main: TFrm_main;

implementation
  uses u_public_define,u_card,u_data,u_configure_database;
  var
  M_Bool_Sl:Boolean;
  M_Bool_Sl1:Boolean;// '当有卡时只读一次
  M_People_Bh:String;
  M_Dou_je:Double;// '开始金额'防止多加钱
  Opn:String;// '加减符号
{$R *.dfm}

procedure TFrm_main.Button14Click(Sender: TObject);
begin
   close;
end;

procedure TFrm_main.FormShow(Sender: TObject);
 
var bb:string;
      i:integer;
begin
 {  bb:=Extractfilepath(application.ExeName)+'sys.ini';
   i:=fileage(bb);
    if i=-1 then
      begin
         Frm_Configure_database:=Tfrm_Configure_database.Create(application);
         frm_configure_database.ShowModal; 
      end;
   if g_bool_database=false then
     begin
        close;
        exit;
     end;
             }
If OPen_Card Then
    begin
     Timer1.Interval:= 1000;
    end
  Else
    begin
     close;
  End;
 
end;

procedure TFrm_main.Timer1Timer(Sender: TObject);
begin
 If Check_Card Then
   begin
      If M_Bool_Sl = True Then Exit;
       list_Add;
       M_Bool_Sl := True;
   end
    Else
     begin
        Lbl.Caption := '无卡片';
         G_Str_Kh:='';
         M_Bool_Sl:= False;
    End;

end;
procedure Tfrm_main.list_add();
  var
  bb:string;
  begin
   G_Str_Kh := Read_Card;
   G_st := dv_beep(G_icdev, 10);
   If G_Str_Kh <> '' Then
    begin
     bb:='select * from mr_people where kh='+quotedstr(g_str_kh);
     data.G_Con.Open();
     data.G_Rst.SQL.Clear;
     data.G_Rst.SQL.Add(bb);
     data.G_Rst.ExecSQL;
     data.G_Rst.Open;
    If Not data.G_Rst.EOF Then
      begin
       //Lbl.Caption := floattostr(formatfloat('#0.00',strtofloat(data.g_rst.FieldValues['ycje'])));
         Lbl.Caption :=  formatfloat('#0.00',strtofloat(data.g_rst.FieldValues['ycje'])) ;
       G_Str_KZT := data.g_rst.FieldValues['kzt'];
       M_Dou_je :=  data.g_rst.FieldValues['ycje'];
       M_People_Bh := data.g_rst.FieldValues['bh'];

       G_Bh := data.g_rst.FieldValues['bh'];

       G_xm :=  data.g_rst.FieldValues['xm'];
      G_kh :=  G_Str_Kh;
       G_bmmc := data.g_rst.FieldValues['bm'];
       end;
   end;
   if (G_Str_KZT='注销') or  (G_Str_KZT='挂失') or (G_Str_KZT='回收') or (g_str_kzt='') then
      begin
         Lbl.Caption := G_Str_KZT + '卡';
      End;
  //
  end;
procedure Tfrm_main.dataSave();
 var
    i:integer;
    P_str_lj:string;
  begin

  If strtofloat(lbl_je.Caption) >= M_Dou_je Then
    begin
      application.MessageBox('你要保存的金额只能小于初始金额!', '明日科技');
      Exit;
     End;
 //   i = MsgBox("你真的要保存数据吗", 36, "明日科技")
//  If i = 6 Then
       data.G_Con.Open();
       data.G_Rst.SQL.Clear;
       P_Str_lj := 'update mr_people set ycje='+ quotedstr(lbl_jg.Caption)+' where kh='+ quotedstr(G_Str_Kh);
        data.G_Rst.SQL.Add (P_Str_lj);
        data.G_Rst.ExecSQL;

        G_xfsj := Formatdatetime('hh:mm:ss',now);
        G_xfrq := Formatdatetime('yyyy年mm月dd日',now );
        G_xfjh := '0001';
        G_xfje := lbl_je.caption;
        G_xfhye :=lbl_jg.caption;

        G_xflx := '卡消费';
      P_Str_lj := 'insert into mr_xfb (bh,xfsj,xfrq,xm,kh,bmmc,xfjh,xfje,xfhye,xflx) values(';
      P_Str_lj := P_Str_lj + quotedstr(G_Bh) + ',' ;
      P_Str_lj := P_Str_lj + quotedstr(G_xfsj) +  ',' ;
      P_Str_lj := P_Str_lj + quotedstr(G_xfrq) +  ',' ;
      P_Str_lj := P_Str_lj + quotedstr(G_xm) +  ','  ;
      P_Str_lj := P_Str_lj + quotedstr(G_kh) +  ','   ;
      P_Str_lj := P_Str_lj + quotedstr(G_bmmc) +  ',' ;
      P_Str_lj := P_Str_lj + quotedstr(G_xfjh) + ','  ;
      P_Str_lj := P_Str_lj + quotedstr(G_xfje) + ','   ;
      P_Str_lj := P_Str_lj + quotedstr(G_xfhye) + ','  ;
      P_Str_lj := P_Str_lj + quotedstr(G_xflx) + ')' ;


        data.G_Rst.SQL.Clear;
        data.G_Rst.SQL.Add (P_Str_lj);
        data.G_Rst.ExecSQL;
           application.MessageBox('数据保存成功' , '明日科技');
           list_Add;
        lbl_je.Caption:='';
        lbl_jg.Caption:='';
 // End If
  //
  end;
procedure TFrm_main.A12Execute(Sender: TObject);
begin
    if lbl_jg.Caption='' then
     begin
       application.MessageBox('无记录不能保存','明日科技有限公司');
       exit;
     end;
   dataSave
end;

procedure TFrm_main.A11Execute(Sender: TObject);
begin
  lbl_je.Caption:='';
  lbl_jg.Caption:='';
end;

procedure TFrm_main.A1Execute(Sender: TObject);
begin
  lbl_je.Caption:=lbl_je.Caption+'1';
  Action2Execute(Sender);
//
end;

procedure TFrm_main.A2Execute(Sender: TObject);
begin
lbl_je.Caption:=lbl_je.Caption+'2';
Action2Execute(Sender);
//
end;

procedure TFrm_main.A3Execute(Sender: TObject);
begin
lbl_je.Caption:=lbl_je.Caption+'3';
Action2Execute(Sender);
//
end;

procedure TFrm_main.A4Execute(Sender: TObject);
begin
lbl_je.Caption:=lbl_je.Caption+'4';
Action2Execute(Sender);
//
end;

procedure TFrm_main.A5Execute(Sender: TObject);
begin
lbl_je.Caption:=lbl_je.Caption+'5';
Action2Execute(Sender);
//
end;

procedure TFrm_main.A6Execute(Sender: TObject);
begin
lbl_je.Caption:=lbl_je.Caption+'6';
Action2Execute(Sender);
//
end;

procedure TFrm_main.A7Execute(Sender: TObject);
begin
lbl_je.Caption:=lbl_je.Caption+'7';
Action2Execute(Sender);
//
end;

procedure TFrm_main.A8Execute(Sender: TObject);
begin
lbl_je.Caption:=lbl_je.Caption+'8';
Action2Execute(Sender);
//
end;

procedure TFrm_main.A9Execute(Sender: TObject);
begin
lbl_je.Caption:=lbl_je.Caption+'9';
Action2Execute(Sender);
//
end;

procedure TFrm_main.A10Execute(Sender: TObject);
begin
lbl_je.Caption:=lbl_je.Caption+'0';
Action2Execute(Sender);
//
end;

procedure TFrm_main.Action1Execute(Sender: TObject);
begin
lbl_je.Caption:=lbl_je.Caption+'.';
//
end;

procedure TFrm_main.Action2Execute(Sender: TObject);
begin
    if strtofloat(lbl.Caption)<strtofloat(lbl_je.Caption) then
       begin
         application.MessageBox('刷卡金额不能大于余额','明日科技');
         lbl_je.Caption:='';
         lbl_jg.Caption:='';
         exit;
       end;
   lbl_jg.Caption:= formatfloat('#0.00',strtofloat(lbl.Caption)-strtofloat(lbl_je.Caption) );

end;

end.

⌨️ 快捷键说明

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