【delphi开源代码栏目提醒】:以下是网学会员为您推荐的delphi开源代码-Bjsbgl.pas,希望本篇文章对您学习有所帮助。
unit Bjsbgl;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ComCtrls, ImgList, StdCtrls, ExtCtrls, Grids, DBGrids, Buttons,
DB;
type
TForm16 = class(TForm)
PageControl1: TPageControl;
TabSheet1: TTabSheet;
TabSheet2: TTabSheet;
TabSheet3: TTabSheet;
ImageList1: TImageList;
DBGrid1: TDBGrid;
Panel1: TPanel;
BitBtn3: TBitBtn;
DataSource1: TDataSource;
Panel2: TPanel;
Label3: TLabel;
Panel3: TPanel;
Label1: TLabel;
Label2: TLabel;
Edit2: TEdit;
Edit1: TEdit;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
DBGrid2: TDBGrid;
Panel4: TPanel;
Label4: TLabel;
SpeedButton2: TSpeedButton;
ComboBox1: TComboBox;
Edit3: TEdit;
Label5: TLabel;
Edit4: TEdit;
BitBtn4: TBitBtn;
DataSource2: TDataSource;
Panel5: TPanel;
Label6: TLabel;
SpeedButton1: TSpeedButton;
ComboBox2: TComboBox;
BitBtn5: TBitBtn;
DBGrid3: TDBGrid;
DataSource3: TDataSource;
Label7: TLabel;
ComboBox3: TComboBox;
Label8: TLabel;
ComboBox4: TComboBox;
procedure Edit1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure BitBtn2Click(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure FormShow(Sender: TObject);
Procedure Editvalue;
Procedure Clear;
Procedure AddItem;
procedure SpeedButton2Click(Sender: TObject);
procedure ComboBox1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure Edit3KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure Edit4KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure BitBtn4Click(Sender: TObject);
procedure DBGrid2CellClick(Column: TColumn);
procedure SpeedButton1Click(Sender: TObject);
procedure ComboBox2KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure BitBtn5Click(Sender: TObject);
procedure PageControl1Change(Sender: TObject);
procedure ComboBox4KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
private
{ Private declarations }
public
Procedure FindNext;
{ Public declarations }
end;
var
Form16: TForm16;
implementation
uses DataModal;
{$R *.dfm}
{ TForm16 }
procedure TForm16.FindNext;
begin
if FindNextControl(ActiveControl,True,False,False)is TEdit then
TEdit(FindNextControl(ActiveControl,True,False,False)).SetFocus
else if FindNextControl(ActiveControl,True,False,False)is TBitBtn then
TBitBtn(FindNextControl(ActiveControl,True,False,False)).SetFocus
else if FindNextControl(ActiveControl,True,False,False)is TComboBox then
TComboBox(FindNextControl(ActiveControl,True,False,False)).SetFocus;
end;
procedure TForm16.Edit1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if Key = vk_ReTurn then
FindNext;
end;
procedure TForm16.BitBtn2Click(Sender: TObject);
begin
Edit1.Clear;
Edit2.Clear;
ComboBox3.ItemIndex := 0;
with Data.ADOQuery2 do
begin
Close;
SQL.Clear;
SQL.Add('select * from 报警设备表 ');
Open;
end;
if Data.ADOQuery2.RecordCount>0 then
DataSource1.DataSet := Data.ADOQuery2
else
DataSource1.DataSet := Nil;
end;
procedure TForm16.BitBtn1Click(Sender: TObject);
begin
if (Trim(Edit1.Text)<>'')and(Trim(ComboBox3.Text)<>'') then
begin
Try
with Data.ADOQuery1 do
begin
Close;
SQL.Clear;
SQL.Add('insert 报警设备表 values (:a,:b,:c)');
Parameters.ParamByName('a').Value := Trim(Edit1.Text);
Parameters.ParamByName('b').Value := Trim(ComboBox3.Text);
Parameters.ParamByName('c').Value := Trim(Edit2.Text);
ExecSQL;
end;
MessageBox(Handle,'操作成功.','提示',MB_ICONINFORMATION);
BitBtn2.OnClick(Sender);
Except
MessageBox(Handle,'系统出错.','提示',MB_ICONSTOP);
end;
end
else
begin
MessageBox(Handle,'信息不完整.','提示',MB_ICONINFORMATION);
Edit1.SetFocus;
end;
end;
procedure TForm16.FormShow(Sender: TObject);
begin
ComboBox3.Clear;
ComboBox4.Clear;
with Data.ADOQuery1 do
begin
Close;
SQL.Clear;
SQL.Add('select distinct 项目名称 from 报警项目表');
Open;
end;
if Data.ADOQuery1.RecordCount>0 then
begin
while Not Data.ADOQuery1.Eof do
begin
ComboBox3.Items.Add(Data.ADOQuery1.Fields[0].Value);
ComboBox4.Items.Add(Data.ADOQuery1.Fields[0].Value);
Data.ADOQuery1.Next;
end;
end;
BitBtn4.Enabled := False;
BitBtn5.Enabled := False;
Data.ADOQuery3.Close;
Data.ADOQuery4.Close;
Data.ADOQuery5.Close;
Edit3.Clear;
Edit4.Clear;
ComboBox3.ItemIndex := 0;
ComboBox4.ItemIndex := 0;
BitBtn2.OnClick(Sender);//初始化报警设备添加页
AddItem;
BitBtn2.OnClick(Sender);
end;
procedure TForm16.SpeedButton2Click(Sender: TObject);
begin
if Trim(ComboBox1.Text)<>'' then
begin
with Data.ADOQuery3 do
begin
Close;
SQL.Clear;
SQL.Add('select * from 报警设备表 where 设备名称 = :a ');
Parameters.ParamByName('a').Value := Trim(ComboBox1.Text);
Open;
end;
if Data.ADOQuery3.RecordCount>0 then
begin
BitBtn4.Enabled := True;
DataSource2.DataSet := Data.ADOQuery3;
Edit3.SetFocus;
EditValue;
end
else
begin
BitBtn4.Enabled := False;
DataSource2.DataSet := Nil;
Clear;
MessageBox(Handle,'没有符合条件的记录.','提示',MB_ICONINFORMATION);
end;
end
else
MessageBox(Handle,'请设置查询条件.','提示',MB_ICONINFORMATION);
end;
procedure TForm16.Editvalue;
begin
Edit3.Text := Data.ADOQuery3.FieldByName('设备名称').Value;
Edit4.Text := Data.ADOQuery3.FieldByName('描述').Value;
ComboBox4.Text := Data.ADOQuery3.FieldByName('报警项目').Value;
end;
procedure TForm16.Clear;
begin
Edit3.Clear;
Edit4.Clear;
ComboBox4.ItemIndex := 0;
DataSource2.DataSet := Nil;
end;
procedure TForm16.ComboBox1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if Key = vk_Return then
SpeedButton2.OnClick(Sender);
end;
procedure TForm16.Edit3KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if Key= vk_Return then
ComboBox4.SetFocus;
end;
procedure TForm16.Edit4KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if (Key= vk_Return)and(BitBtn4.Enabled = True) then
BitBtn4.SetFocus;
end;
procedure TForm16.BitBtn4Click(Sender: TObject);
begin
If Trim(Edit3.Text)='' then
begin
MessageBox(Handle,'设备名称不能为空.','提示',MB_ICONINFORMATION);
Exit;
end;
If Trim(ComboBox4.Text)='' then
begin
MessageBox(Handle,'报警项目不能为空.','提示',MB_ICONINFORMATION);
Exit;
end;
if Application.MessageBox('确实要修改当前记录吗?','提示',mb_YesNo)= ID_Yes then
Try
with Data.ADOQuery4 do
begin
Close;
SQL.Clear;
SQL.Add('Update 报警设备表 set 设备名称 = :a, 报警项目 = :d,描述 = :b where 设备名称 = :c');
Parameters.ParamByName('a').Value := Trim(Edit3.Text);
Parameters.ParamByName('b').Value := Trim(Edit4.Text);
Parameters.ParamByName('d').Value := Trim(ComboBox4.Text);
Parameters.ParamByName('c').Value := Trim(Data.ADOQue
上一篇:
DirectDraw.cpp
下一篇:
配电自动化系统计算机网络及其支持软件的体系结构