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

📄 light_house_f.pas

📁 县级供电企业电费核算源码, 在客户处正常运行8年以上, Delphi 5开发,数据库为Interbase/Firebird, 深入使用Procedure和Trigger等, 对入门者具有很好的参考价值
💻 PAS
字号:
unit Light_House_F;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  DBCtrls, StdCtrls, Grids, DBGrids, Db, DBTables, ExtCtrls, Mask, ComCtrls;

type
  TF_Light_House = class(TForm)
    Panel_House: TPanel;
    DBG_House: TDBGrid;
    DBN: TDBNavigator;
    Panel_Ammeter: TPanel;
    Panel1: TPanel;
    Label3: TLabel;
    DBLCB_Station: TDBLookupComboBox;
    Label10: TLabel;
    DBLCB_Line: TDBLookupComboBox;
    DBE_Line_No: TDBEdit;
    Label11: TLabel;
    DBLCB_Transfer: TDBLookupComboBox;
    Label8: TLabel;
    Label9: TLabel;
    DBLCB_Village: TDBLookupComboBox;
    DBLCB_Town: TDBLookupComboBox;
    DBE_Town_No: TDBEdit;
    Label35: TLabel;
    DBE_Telephone: TDBEdit;
    DBE_Position: TDBEdit;
    Label34: TLabel;
    Label33: TLabel;
    DBE_House_Name: TDBEdit;
    DBE_House_No: TDBEdit;
    Label32: TLabel;
    Label23: TLabel;
    DBE_Ammeter_no: TDBEdit;
    Label24: TLabel;
    DBE_Ammeter_Count: TDBEdit;
    Label26: TLabel;
    DBE_Box_No: TDBEdit;
    Label25: TLabel;
    DBE_Master_Ammeter_No: TDBEdit;
    Label6: TLabel;
    DBE_Date: TDBEdit;
    DBE_Ammeter_Date: TDBEdit;
    Label7: TLabel;
    Label2: TLabel;
    DBLCB_Voltage: TDBLookupComboBox;
    DBLCB_Elect: TDBLookupComboBox;
    Label1: TLabel;
    Label14: TLabel;
    DBE_SubFix_Rate1: TDBEdit;
    DBE_SubFix_Price2: TDBEdit;
    Label15: TLabel;
    DBE_Subfix_Rate2: TDBEdit;
    DBE_Subfix_Price1: TDBEdit;
    Label13: TLabel;
    Label12: TLabel;
    DBEdit1: TDBEdit;
    Panel_Ct: TPanel;
    DBE_CT_Up: TDBEdit;
    Label4: TLabel;
    CB_Ct: TCheckBox;
    DBE_Ct_Down: TDBEdit;
    Label5: TLabel;
    Label31: TLabel;
    DBE_Ammeter_Right: TDBEdit;
    Label30: TLabel;
    Bt_Return: TButton;
    Bt_Print: TButton;
    Bt_New: TButton;
    DBLCB_Ammeter_Model: TDBLookupComboBox;
    procedure Bt_ReturnClick(Sender: TObject);
    procedure FormActivate(Sender: TObject);
    procedure DBG_HouseExit(Sender: TObject);
    procedure Panel_AmmeterExit(Sender: TObject);
    procedure DBE_Line_NoChange(Sender: TObject);
    procedure DBEdit1Change(Sender: TObject);
    procedure CB_CtClick(Sender: TObject);
    procedure DBE_Town_NoChange(Sender: TObject);
    procedure Bt_NewClick(Sender: TObject);
    procedure DBG_HouseDblClick(Sender: TObject);
    procedure DBG_HouseKeyPress(Sender: TObject; var Key: Char);
    procedure Bt_PrintClick(Sender: TObject);
    procedure DBE_House_NameKeyPress(Sender: TObject; var Key: Char);
    procedure DBE_PositionKeyPress(Sender: TObject; var Key: Char);
    procedure DBE_House_NoKeyPress(Sender: TObject; var Key: Char);
    procedure DBE_TelephoneKeyPress(Sender: TObject; var Key: Char);
    procedure DBE_Box_NoKeyPress(Sender: TObject; var Key: Char);
    procedure DBE_Ammeter_noKeyPress(Sender: TObject; var Key: Char);
    procedure DBE_Ammeter_CountKeyPress(Sender: TObject; var Key: Char);
    procedure DBE_House_NoChange(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  F_Light_House: TF_Light_House;

implementation

uses Table_DM, Light_House_R, CommSmdljf;

{$R *.DFM}

procedure TF_Light_House.Bt_ReturnClick(Sender: TObject);
begin
	Dm_Table.Tb_Ammeter.Refresh();//可使用已修改的数据POST
	Close();
end;




procedure TF_Light_House.FormActivate(Sender: TObject);
begin
	DBLCB_Station.KeyValue := Default_Station_No;
	DBLCB_Line.KeyValue := Default_Line_No;
	DBLCB_Transfer.KeyValue := Default_Transfer_No;
	DBLCB_Village.KeyValue := Dm_Table.Tb_House['F_Village_No'];
	DBLCB_Town.KeyValue := Dm_Table.Tb_House['F_Village_No'];
    DBE_House_No.SetFocus();
End;






















procedure TF_Light_House.DBG_HouseExit(Sender: TObject);
begin
	If Dm_Table.Tb_House.Modified Then
    	Dm_Table.Tb_House.Post();
end;

procedure TF_Light_House.Panel_AmmeterExit(Sender: TObject);
begin
	If Dm_Table.Tb_Ammeter.Modified Then
    	Dm_Table.Tb_Ammeter.Post();
end;

procedure TF_Light_House.DBE_Line_NoChange(Sender: TObject);
begin
	DBLCB_Line.KeyValue := Dm_Table.Tb_Line['F_Line_No'];
end;












procedure TF_Light_House.DBEdit1Change(Sender: TObject);
begin
	DBLCB_Transfer.KeyValue := Dm_Table.Tb_Transfer['F_Transfer_No'];
end;

procedure TF_Light_House.CB_CtClick(Sender: TObject);
begin
   	Panel_Ct.Visible := Cb_Ct.Checked;
end;




procedure TF_Light_House.DBE_Town_NoChange(Sender: TObject);
begin
	DBLCB_Village.KeyValue := Dm_Table.Tb_Village['F_Village_No'];
end;





procedure TF_Light_House.Bt_NewClick(Sender: TObject);
begin
	Default_Box_No := DBE_Box_No.Text;//存储箱号
	Dm_Table.Tb_House.Insert();
    DBE_House_Name.SetFocus();
end;

procedure TF_Light_House.DBG_HouseDblClick(Sender: TObject);
begin
	DBE_House_No.SetFocus();
end;

procedure TF_Light_House.DBG_HouseKeyPress(Sender: TObject; var Key: Char);
begin
	If Key = #13 Then
		DBE_House_No.SetFocus();
end;


procedure TF_Light_House.Bt_PrintClick(Sender: TObject);
begin
	Dm_Table.Tb_Ammeter.Refresh();//可使用已修改的数据POST
	//这是一个View, 应刷新
	Dm_Table.V_House_Ammeter.Refresh();
	P_Print_Report(R_Light_House);
end;

procedure TF_Light_House.DBE_House_NameKeyPress(Sender: TObject;
  var Key: Char);
begin
	If Key = #13 Then
    	DBE_Box_No.SetFocus();
end;

procedure TF_Light_House.DBE_PositionKeyPress(Sender: TObject;
  var Key: Char);
begin
	If Key = #13 Then
    	DBE_Ammeter_No.SetFocus();
end;

procedure TF_Light_House.DBE_House_NoKeyPress(Sender: TObject;
  var Key: Char);
begin
	If Key = #13 Then
    	DBE_House_Name.SetFocus();
end;

procedure TF_Light_House.DBE_TelephoneKeyPress(Sender: TObject;
  var Key: Char);
begin
	If Key = #13 Then
    	DBE_Position.SetFocus();
end;

procedure TF_Light_House.DBE_Box_NoKeyPress(Sender: TObject;
  var Key: Char);
begin
	If Key = #13 Then
    	DBE_Telephone.SetFocus();
end;

procedure TF_Light_House.DBE_Ammeter_noKeyPress(Sender: TObject;
  var Key: Char);
begin
	If Key = #13 Then
    	DBE_Ammeter_Count.SetFocus();
end;

procedure TF_Light_House.DBE_Ammeter_CountKeyPress(Sender: TObject;
  var Key: Char);
begin
	If Key = #13 Then
    	Bt_New.SetFocus();
end;


procedure TF_Light_House.DBE_House_NoChange(Sender: TObject);
begin
	DBLCB_Town.KeyValue := Dm_Table.Tb_House['F_Village_No'];
	DBLCB_Village.KeyValue := Dm_Table.Tb_House['F_Village_No'];
end;

end.

⌨️ 快捷键说明

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