📄 u_form1.pas
字号:
unit U_Form1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Grids, DBGrids, ExtCtrls, DBCtrls, StdCtrls, Buttons, ComCtrls,
ToolWin, Spin, ImgList, DB, DBTables, RpCon, RpConDS, RpConBDE, RpDefine,
RpRave;
type
TFrmPhone = class(TForm)
DBGrid1: TDBGrid;
ToolBar1: TToolBar;
AddTButton: TToolButton;
ModTButton: TToolButton;
DelTButton: TToolButton;
AddGB: TGroupBox;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
NameEdit: TEdit;
AddOkButton: TButton;
AddCancelButton: TButton;
Label5: TLabel;
RelationCB: TComboBox;
ImageList1: TImageList;
Label13: TLabel;
NoteEdit: TEdit;
ToolButton3: TToolButton;
NextTB: TToolButton;
ToolButton6: TToolButton;
ToolButton7: TToolButton;
ToolButton1: TToolButton;
Panel1: TPanel;
Label15: TLabel;
Label16: TLabel;
Label17: TLabel;
NameCB: TComboBox;
Table1: TTable;
SBar: TStatusBar;
ToolButton2: TToolButton;
HomePhoneEdit: TEdit;
CompanyEdit: TEdit;
HandsetEdit: TEdit;
ModGB: TGroupBox;
Label6: TLabel;
Label7: TLabel;
Label8: TLabel;
Label9: TLabel;
Label10: TLabel;
Label11: TLabel;
NameEdit1: TEdit;
ModOkButton: TButton;
ModCancelButton: TButton;
RelationCB1: TComboBox;
HomePhoneEdit1: TEdit;
CompanyEdit1: TEdit;
HandsetEdit1: TEdit;
NoteEdit1: TEdit;
DataSource1: TDataSource;
StateCB: TComboBox;
Label12: TLabel;
Label14: TLabel;
H_PhoneCB: TComboBox;
Label18: TLabel;
HandsetCB: TComboBox;
Label19: TLabel;
C_PhoneCB: TComboBox;
RvProject1: TRvProject;
RvTableConnection1: TRvTableConnection;
procedure FormCreate(Sender: TObject);
procedure AddTButtonClick(Sender: TObject);
procedure AddOkButtonClick(Sender: TObject);
procedure AddCancelButtonClick(Sender: TObject);
procedure ModTButtonClick(Sender: TObject);
procedure DelTButtonClick(Sender: TObject);
procedure ToolButton7Click(Sender: TObject);
procedure ToolButton3Click(Sender: TObject);
procedure NextTBClick(Sender: TObject);
procedure ToolButton6Click(Sender: TObject);
procedure NameCBChange(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
procedure DBGrid1CellClick(Column: TColumn);
// procedure ToolButton2Click(Sender: TObject);
procedure ModOkButtonClick(Sender: TObject);
procedure ModCancelButtonClick(Sender: TObject);
procedure H_PhoneCBChange(Sender: TObject);
procedure C_PhoneCBChange(Sender: TObject);
procedure HandsetCBChange(Sender: TObject);
procedure StateCBChange(Sender: TObject);
procedure ToolButton2Click(Sender: TObject);
private
procedure SelectAll;
{ Private declarations }
public
{ Public declarations }
end;
var
FrmPhone: TFrmPhone;
implementation
//uses DynamicFormUnit, Dy_QReport;
const Title:array[0..6] of String=('编号','姓名','住宅电话',' 单位电话 ',
'手机','关系',' 备注 ');
{$R *.dfm}
procedure TFrmPhone.FormCreate(Sender: TObject);
begin
Table1.Close;
Table1.DatabaseName:=GetCurrentDir+'\Database';
Table1.TableName :='电话号码簿.db';
SelectAll;
end;
procedure TFrmPhone.SelectAll;
var
i:word;
begin
with Table1 do
begin
Close;
Filter:='';
Filtered:=true;
Open;
end;
for i:=0 to 6 do
begin
DBGrid1.Columns[i].Title.caption:=Title[i];
DBGrid1.Columns[i].Title.Alignment:=taCenter;
DBGrid1.Columns[i].Alignment:=taCenter;
end;
DBGrid1.Columns[0].Visible:=false;
end;
procedure TFrmPhone.AddTButtonClick(Sender: TObject);
begin
AddGB.Visible:=true;
ModGB.Visible:=false ;
end;
procedure TFrmPhone.AddOkButtonClick(Sender: TObject);
var
Date:TDateTime;
ID: Longint;
begin
Date:=now;
ID:=StrToInt(format('%10.0f',[50000*Date]));
if (NameEdit.Text='') then
begin
Showmessage('需要提供用户姓名');
exit;
end;
try
Table1.AppendRecord([ID,NameEdit.Text,HomePhoneEdit.Text,
CompanyEdit.Text,HandsetEdit.Text,RelationCB.Text,NoteEdit.Text]);
except On E:Exception do
Application.MessageBox(PChar('5秒钟后再试一次!'),'提示:',MB_ICONINFORMATION);
end;
SelectAll;
AddGB.Visible:=false;
end;
procedure TFrmPhone.AddCancelButtonClick(Sender: TObject);
begin
AddGB.Visible:=false;
end;
procedure TFrmPhone.ModTButtonClick(Sender: TObject);
begin
ModGB.Visible:=true;
AddGB.Visible:=false;
with Table1 do
begin
NameEdit1.Text:=Fields[1].AsString;
HomePhoneEdit1.Text:=Fields[2].AsString;
CompanyEdit1.Text:=Fields[3].AsString;
HandsetEdit1.Text:=Fields[4].AsString;
RelationCB1.Text:=Fields[5].AsString ;
NoteEdit1.Text:=Fields[6].AsString;
end;
end;
procedure TFrmPhone.DelTButtonClick(Sender: TObject);
begin
if Application.MessageBox('确实需要删除记录吗!',
'提示',MB_YesNo+MB_IconExclamation+MB_SystemModal)=IDYES then
Table1.Delete;
end;
procedure TFrmPhone.ToolButton7Click(Sender: TObject);
begin
Table1.First;
end;
procedure TFrmPhone.ToolButton3Click(Sender: TObject);
begin
Table1.Prior;
end;
procedure TFrmPhone.NextTBClick(Sender: TObject);
begin
Table1.Next;
end;
procedure TFrmPhone.ToolButton6Click(Sender: TObject);
begin
Table1.Last;
end;
procedure TFrmPhone.NameCBChange(Sender: TObject);
begin
with Table1 do
begin
if NameCB.Text='' then SelectAll
else
Filter:='GuestName ='+QuotedStr(NameCB.Text+'*');
Filtered:=true;
StateCB.ItemIndex:=0;
end;
end;
procedure TFrmPhone.ToolButton1Click(Sender: TObject);
begin
Close;
end;
procedure TFrmPhone.DBGrid1CellClick(Column: TColumn);
var
ID:integer;
begin
ID:=Column.Grid.Fields[0].AsInteger;
SBar.SimpleText:='该用户信息最新修订时间是:'+ DateTimeToStr(ID/50000) ;
end;
{procedure TFrmPhone.ToolButton2Click(Sender: TObject);
var
DynamicForm:TDynamicForm;
GridPrint:TGridPrint;
begin
DynamicForm:=TDynamicForm.Create(Application);
with DynamicForm do
begin
GridPrint:=TGridPrint.Create(QuickRep,DBGrid1,TitleB,HeaderB,DetailB,
'电话号码簿');
GridPrint.DoPreview();
GridPrint.Free;
end;
end; }
procedure TFrmPhone.ModOkButtonClick(Sender: TObject);
var
Date:TDateTime;
ID: Longint;
begin
if Application.MessageBox('确实需要保存记录吗!',
'提示',MB_YesNo+MB_IconExclamation+MB_SystemModal)=IDYES then
begin
Date:=now;
ID:=StrToInt(format('%10.0f',[50000*Date]));
with Table1 do
begin
Edit;
Fields[0].AsInteger:=ID;
Fields[1].AsString:=NameEdit1.Text;
Fields[2].AsString:=HomePhoneEdit1.Text;
Fields[3].AsString:=CompanyEdit1.Text;
Fields[4].AsString:=HandsetEdit1.Text;
Fields[5].AsString:=RelationCB1.Text ;
Fields[6].AsString:=NoteEdit1.Text;
try
Post
except On E:Exception do
Application.MessageBox(PChar('5秒钟后再试一次!'),'提示:',MB_ICONINFORMATION);
end;
end;
end;
ModGB.Visible:=false;
end;
procedure TFrmPhone.ModCancelButtonClick(Sender: TObject);
begin
ModGB.Visible:=false;
end;
procedure TFrmPhone.H_PhoneCBChange(Sender: TObject);
begin
if not Table1.Locate('H_Phone',H_PhoneCB.Text,[loPartialKey]) then
Showmessage('没有发现符合条件的记录');
end;
procedure TFrmPhone.C_PhoneCBChange(Sender: TObject);
begin
if not Table1.Locate('C_Phone',C_PhoneCB.Text,[loPartialKey]) then
Showmessage('没有发现符合条件的记录');
end;
procedure TFrmPhone.HandsetCBChange(Sender: TObject);
begin
if not Table1.Locate('Handset',HandsetCB.Text,[loPartialKey]) then
Showmessage('没有发现符合条件的记录');
end;
procedure TFrmPhone.StateCBChange(Sender: TObject);
begin
with Table1 do
begin
if StateCB.Text='' then SelectAll
else
Filter:='Relation ='+QuotedStr(StateCB.Text);
Filtered:=true;
end;
end;
procedure TFrmPhone.ToolButton2Click(Sender: TObject);
begin
RvProject1.Execute;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -