📄 main_card.pas
字号:
unit main_card;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ComCtrls, fcDemoRichEdit, fcShapeBtn, ExtCtrls,
fcClearPanel, fcButtonGroup, fcOutlookBar, fcButton, fcImgBtn, fcImager,
fcImage, fcimageform,shellapi, fcLabel, ADODB, DB, Mask, DBCtrls,
cxControls, cxContainer, cxEdit, cxTextEdit, cxMaskEdit, cxDropDownEdit,
cxLookupEdit, cxDBLookupEdit, cxDBLookupComboBox, cxStyles, cxCustomData,
cxGraphics, cxFilter, cxData, cxDataStorage, cxDBData, cxGridLevel,
cxClasses, cxGridCustomView, cxGridCustomTableView, cxGridTableView,
cxGridDBTableView, cxGrid, DBTables,cxExportGrid4Link, cxCheckBox,
cxDBEdit;
type
Tmain_form = class(TForm)
fcImageForm1: TfcImageForm;
fcImager1: TfcImager;
DragControl: TImage;
About1: TfcImageBtn;
brower1: TfcImageBtn;
edit1: TfcImageBtn;
pc0: TPageControl;
tab1: TTabSheet;
tab2: TTabSheet;
tab3: TTabSheet;
tab4: TTabSheet;
ScrollBox1: TScrollBox;
ScrollBox2: TScrollBox;
ScrollBox3: TScrollBox;
ScrollBox4: TScrollBox;
fcLabel1: TfcLabel;
fcLabel2: TfcLabel;
ADOCONN: TADOConnection;
ado_edit: TADOTable;
ADOStored: TADOStoredProc;
Memo_MEMO: TDBMemo;
lookclient_type: TcxDBLookupComboBox;
Label9: TLabel;
Label8: TLabel;
Label7: TLabel;
Label6: TLabel;
Label5: TLabel;
Label4: TLabel;
Label3: TLabel;
Label2: TLabel;
Label14: TLabel;
Label13: TLabel;
Label12: TLabel;
Label11: TLabel;
Label10: TLabel;
Edit_USER: TDBEdit;
Edit_TEL: TDBEdit;
Edit_TAX: TDBEdit;
Edit_POSTCODE: TDBEdit;
Edit_NUMBER: TDBEdit;
Edit_NAME: TDBEdit;
Edit_FAX: TDBEdit;
Edit_EMAIL: TDBEdit;
Edit_CODE: TDBEdit;
Edit_BANK: TDBEdit;
Edit_ADDRESS: TDBEdit;
fc_add: TfcImageBtn;
fc_cancel: TfcImageBtn;
ado_editds: TDataSource;
fcImageBtn1: TfcImageBtn;
ado_typeds: TDataSource;
ado_type: TADOTable;
disp_grid: TcxGrid;
disp_db: TcxGridDBTableView;
disp_dblevel: TcxGridLevel;
ado_browseds: TDataSource;
ado_browse: TADOQuery;
disp_dbID: TcxGridDBColumn;
disp_dbname: TcxGridDBColumn;
disp_dbuser: TcxGridDBColumn;
disp_dbaddress: TcxGridDBColumn;
disp_dbbank: TcxGridDBColumn;
disp_dbtax: TcxGridDBColumn;
disp_dbcard: TcxGridDBColumn;
disp_dbnumber: TcxGridDBColumn;
disp_dbpostcode: TcxGridDBColumn;
disp_dbtel: TcxGridDBColumn;
disp_dbtype: TcxGridDBColumn;
disp_dbfax: TcxGridDBColumn;
disp_dbemail: TcxGridDBColumn;
disp_dbmemo: TcxGridDBColumn;
fcexport: TfcImageBtn;
fcprint: TfcImageBtn;
SaveDialog: TSaveDialog;
fcdel: TfcImageBtn;
fcLabel3: TfcLabel;
fcImageBtn2: TfcImageBtn;
fcImageBtn3: TfcImageBtn;
cc: TcxCheckBox;
fcsave: TfcImageBtn;
disp_dbjob: TcxGridDBColumn;
Label1: TLabel;
ado_job: TADOTable;
ado_jobds: TDataSource;
cxDBLookupComboBox1: TcxDBLookupComboBox;
procedure CloseBtnClick(Sender: TObject);
procedure fcImager1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure edit1Click(Sender: TObject);
procedure brower1Click(Sender: TObject);
procedure About1Click(Sender: TObject);
procedure fc_addClick(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure fc_cancelClick(Sender: TObject);
procedure fcImageBtn1Click(Sender: TObject);
procedure fcexportClick(Sender: TObject);
procedure fcdelClick(Sender: TObject);
procedure fcprintClick(Sender: TObject);
procedure disp_dbKeyPress(Sender: TObject; var Key: Char);
procedure fcImageBtn3Click(Sender: TObject);
procedure Edit_NAMEExit(Sender: TObject);
procedure fcsaveClick(Sender: TObject);
procedure disp_dbMouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
private
procedure doenterastab(var msg:tmsg;var handled:boolean);
public
{ Public declarations }
end;
var
main_form: Tmain_form;
implementation
uses
card_type,card_print;
{$R *.dfm}
procedure Tmain_form.CloseBtnClick(Sender: TObject);
begin
close;
end;
procedure Tmain_form.fcImager1Click(Sender: TObject);
begin
shellexecute(application.MainForm.Handle,'open',pchar('http://www.ezhuo.cn'),nil,nil,sw_normal);
end;
procedure Tmain_form.FormCreate(Sender: TObject);
begin
with adoconn do
begin
Close; //关闭数据库
ConnectionString := 'Provider=Microsoft.Jet.OLEDB.4.0' +
';Data Source=' + ExtractFilePath(Application.ExeName)+'card_database\card.mdb'+
';Persist Security Info=False;Jet OLEDB:Database Password='+'ezhuo.cn'; //password是设置密码项
Open; //打开数据库
end;
fcimager1.ShowHint :=true;
disp_grid.ShowHint :=true;
pc0.ActivePage :=tab1;
ado_type.Open;
ado_job.Open;
application.OnMessage:=doenterastab;//tab变成ENTER键
end;
procedure Tmain_form.edit1Click(Sender: TObject);
begin
pc0.ActivePage :=tab2;
if ado_edit.State <>dsinsert then
begin
ado_edit.Open;
ado_edit.Append ;
end;
edit_name.SetFocus ;
end;
procedure Tmain_form.brower1Click(Sender: TObject);
begin
pc0.ActivePage :=tab3;
//ado_browse.Refresh;
ado_browse.close;
ado_browse.Open;
end;
procedure Tmain_form.About1Click(Sender: TObject);
begin
pc0.ActivePage :=tab4;
end;
procedure Tmain_form.fc_addClick(Sender: TObject);
begin
if (edit_name.Text ='')or(edit_user.Text='') then
begin
messagedlg('提示:带***必须输入'+#13+#13+
'请输入完整信息',mtinformation,[mbyes],0);
fc_add.Down :=false;
end
else
begin
ado_edit.Append ;
fc_add.Down :=false;
edit_name.SetFocus ;
end;
end;
procedure Tmain_form.FormClose(Sender: TObject; var Action: TCloseAction);
begin
if (ado_edit.State =dsedit)or(ado_edit.State =dsinsert)then
if (edit_name.Text <>'')or(edit_user.Text <>'') then
if messagedlg('提示:在编辑项目里编辑了数据,请问是否保存数据?',mtinformation,[mbyes,mbno],0)=mryes then
ado_edit.Post ;
if (ado_browse.State =dsedit)or(ado_browse.State =dsinsert)then
if messagedlg('提示:在浏览项目里编辑了数据,请问是否保存数据?',mtinformation,[mbyes,mbno],0)=mryes then
ado_browse.Post ;
ado_edit.Close;
ado_browse.Close;
ado_type.Close;
ado_job.Close;
adoconn.Close;
end;
procedure Tmain_form.fc_cancelClick(Sender: TObject);
begin
if ado_edit.State =dsinsert then
ado_edit.Cancel ;
end;
procedure Tmain_form.doenterastab(var msg: tmsg; var handled: boolean);
begin
if msg.message =wm_keydown then
begin
if msg.wParam =vk_return then
keybd_event(vk_tab,0,0,0);
end;
end;
procedure Tmain_form.fcImageBtn1Click(Sender: TObject);
var
form:tcard_type_form;
begin
try
form:=tcard_type_form.Create(nil);
form.ShowModal ;
form.Free;
ado_type.Close;
ado_type.Open;
ado_job.Close;
ado_job.Open;
except
messagedlg('错误,资源错误!',mterror,[mbyes],0);
form.Free;
end;
end;
procedure Tmain_form.fcexportClick(Sender: TObject);
var
count:integer;
begin
savedialog.FileName :='名片资料';
if savedialog.FilterIndex=1 then
savedialog.DefaultExt :='xls'
else
if savedialog.FilterIndex =2 then
savedialog.DefaultExt :='htm'
else
if savedialog.FilterIndex=3 then
savedialog.DefaultExt :='xml'
else
if savedialog.FilterIndex=4 then
savedialog.DefaultExt :='txt';
if savedialog.Execute then
begin
if savedialog.FilterIndex=1 then
ExportGrid4ToExcel(savedialog.FileName,disp_grid)
else
if savedialog.FilterIndex =2 then
ExportGrid4Tohtml(savedialog.FileName,disp_grid)
else
if savedialog.FilterIndex=3 then
ExportGrid4Toxml(savedialog.FileName,disp_grid)
else
if savedialog.FilterIndex=4 then
ExportGrid4Totext(savedialog.FileName,disp_grid,true,true,'|',' ',' ');
end;
end;
procedure Tmain_form.fcdelClick(Sender: TObject);
begin
if ado_type.Eof =false then
if messagedlg('请确定删除?',mtinformation,[mbyes,mbno],0)=mryes then
ado_browse.Delete ;
end;
procedure Tmain_form.fcprintClick(Sender: TObject);
begin
card_qr.Preview ;
end;
procedure Tmain_form.disp_dbKeyPress(Sender: TObject; var Key: Char);
begin
if key=#46 then
fcdel.Click ;
end;
procedure Tmain_form.fcImageBtn3Click(Sender: TObject);
begin
//main_form.WindowState :=wsminimized;
end;
procedure Tmain_form.Edit_NAMEExit(Sender: TObject);
begin
if cc.Checked =true then
ado_edit.FieldByName('user').AsString:=edit_name.Text ;
end;
procedure Tmain_form.fcsaveClick(Sender: TObject);
begin
if (ado_browse.State =dsedit)or(ado_browse.State =dsinsert) then
ado_browse.Post ;
end;
procedure Tmain_form.disp_dbMouseMove(Sender: TObject; Shift: TShiftState;
X, Y: Integer);
var
sum,rec:integer;
begin
sum:=ado_browse.RecordCount ;
rec:=ado_browse.RecNo ;
disp_grid.Hint :='共有记录数:'+inttostr(sum)+' '+#13+
'当前记录数:'+inttostr(rec)+' ';
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -